From 7bc18035816a2eac15dfac4d987eb9bf43f90ef6 Mon Sep 17 00:00:00 2001 From: Janne Koskinen Date: Mon, 28 Dec 2009 13:47:46 +0200 Subject: Daylight savings time for Symbian take 2 Second try to make this work for all S60 platforms --- src/corelib/corelib.pro | 2 ++ src/corelib/tools/qdatetime.cpp | 60 +++++++++++++++++++++------------- tests/auto/qdatetime/tst_qdatetime.cpp | 7 ++++ 3 files changed, 46 insertions(+), 23 deletions(-) diff --git a/src/corelib/corelib.pro b/src/corelib/corelib.pro index 9a15bf1..7f33791 100644 --- a/src/corelib/corelib.pro +++ b/src/corelib/corelib.pro @@ -35,4 +35,6 @@ symbian: { # Workaroud for problems with paging this dll MMP_RULES -= PAGED MMP_RULES *= UNPAGED + # Timezone server + LIBS += -ltzclient } diff --git a/src/corelib/tools/qdatetime.cpp b/src/corelib/tools/qdatetime.cpp index db6435e..240f0cf 100644 --- a/src/corelib/tools/qdatetime.cpp +++ b/src/corelib/tools/qdatetime.cpp @@ -75,6 +75,7 @@ #if defined(Q_OS_SYMBIAN) #include +#include #endif QT_BEGIN_NAMESPACE @@ -3721,23 +3722,32 @@ static QDateTimePrivate::Spec utcToLocal(QDate &date, QTime &time) #elif defined(Q_OS_SYMBIAN) // months and days are zero index based _LIT(KUnixEpoch, "19700000:000000.000000"); - TTimeIntervalSeconds utcOffset = User::UTCOffset(); TTimeIntervalSeconds tTimeIntervalSecsSince1Jan1970UTC(secsSince1Jan1970UTC); TTime epochTTime; TInt err = epochTTime.Set(KUnixEpoch); tm res; if(err == KErrNone) { TTime utcTTime = epochTTime + tTimeIntervalSecsSince1Jan1970UTC; - utcTTime = utcTTime + utcOffset; - TDateTime utcDateTime = utcTTime.DateTime(); - res.tm_sec = utcDateTime.Second(); - res.tm_min = utcDateTime.Minute(); - res.tm_hour = utcDateTime.Hour(); - res.tm_mday = utcDateTime.Day() + 1; // non-zero based index for tm struct - res.tm_mon = utcDateTime.Month(); - res.tm_year = utcDateTime.Year() - 1900; - res.tm_isdst = 0; - brokenDown = &res; + TRAP(err, + RTz tz; + User::LeaveIfError(tz.Connect()); + CleanupClosePushL(tz); + res.tm_isdst = tz.IsDaylightSavingOnL(*tz.GetTimeZoneIdL(),utcTTime); + User::LeaveIfError(tz.ConvertToLocalTime(utcTTime)); + CleanupStack::PopAndDestroy(&tz)); + if (KErrNone == err) { + TDateTime localDateTime = utcTTime.DateTime(); + res.tm_sec = localDateTime.Second(); + res.tm_min = localDateTime.Minute(); + res.tm_hour = localDateTime.Hour(); + res.tm_mday = localDateTime.Day() + 1; // non-zero based index for tm struct + res.tm_mon = localDateTime.Month(); + res.tm_year = localDateTime.Year() - 1900; + // Symbian's timezone server doesn't know how to handle DST before year 1997 + if (res.tm_year < 97) + res.tm_isdst = -1; + brokenDown = &res; + } } #elif !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS) // use the reentrant version of localtime() where available @@ -3812,23 +3822,27 @@ static void localToUtc(QDate &date, QTime &time, int isdst) #elif defined(Q_OS_SYMBIAN) // months and days are zero index based _LIT(KUnixEpoch, "19700000:000000.000000"); - TTimeIntervalSeconds utcOffset = TTimeIntervalSeconds(0 - User::UTCOffset().Int()); TTimeIntervalSeconds tTimeIntervalSecsSince1Jan1970UTC(secsSince1Jan1970UTC); TTime epochTTime; TInt err = epochTTime.Set(KUnixEpoch); tm res; if(err == KErrNone) { - TTime utcTTime = epochTTime + tTimeIntervalSecsSince1Jan1970UTC; - utcTTime = utcTTime + utcOffset; - TDateTime utcDateTime = utcTTime.DateTime(); - res.tm_sec = utcDateTime.Second(); - res.tm_min = utcDateTime.Minute(); - res.tm_hour = utcDateTime.Hour(); - res.tm_mday = utcDateTime.Day() + 1; // non-zero based index for tm struct - res.tm_mon = utcDateTime.Month(); - res.tm_year = utcDateTime.Year() - 1900; - res.tm_isdst = (int)isdst; - brokenDown = &res; + TTime localTTime = epochTTime + tTimeIntervalSecsSince1Jan1970UTC; + RTz tz; + if (KErrNone == tz.Connect()) { + if (KErrNone == tz.ConvertToUniversalTime(localTTime)) { + TDateTime utcDateTime = localTTime.DateTime(); + res.tm_sec = utcDateTime.Second(); + res.tm_min = utcDateTime.Minute(); + res.tm_hour = utcDateTime.Hour(); + res.tm_mday = utcDateTime.Day() + 1; // non-zero based index for tm struct + res.tm_mon = utcDateTime.Month(); + res.tm_year = utcDateTime.Year() - 1900; + res.tm_isdst = (int)isdst; + brokenDown = &res; + } + tz.Close(); + } } #elif !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS) // use the reentrant version of gmtime() where available diff --git a/tests/auto/qdatetime/tst_qdatetime.cpp b/tests/auto/qdatetime/tst_qdatetime.cpp index 1140402..32fa398 100644 --- a/tests/auto/qdatetime/tst_qdatetime.cpp +++ b/tests/auto/qdatetime/tst_qdatetime.cpp @@ -147,9 +147,16 @@ Q_DECLARE_METATYPE(QTime) tst_QDateTime::tst_QDateTime() { +#ifdef Q_OS_SYMBIAN + // Symbian's timezone server cannot handle DST correctly for dates before year 1997 + uint x1 = QDateTime(QDate(2000, 1, 1), QTime()).toTime_t(); + uint x2 = QDateTime(QDate(2000, 6, 1), QTime()).toTime_t(); + europeanTimeZone = (x1 == 946681200 && x2 == 959810400); +#else uint x1 = QDateTime(QDate(1990, 1, 1), QTime()).toTime_t(); uint x2 = QDateTime(QDate(1990, 6, 1), QTime()).toTime_t(); europeanTimeZone = (x1 == 631148400 && x2 == 644191200); +#endif } tst_QDateTime::~tst_QDateTime() -- cgit v0.12 From fdf463ba74b2e00ba5f9db10f43585e8b15054f7 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Tue, 12 Jan 2010 17:39:25 +0100 Subject: Remove erroneous warning in QFileInfo::absolutePath() --- src/corelib/io/qfileinfo.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/corelib/io/qfileinfo.cpp b/src/corelib/io/qfileinfo.cpp index b4437db..e90529e 100644 --- a/src/corelib/io/qfileinfo.cpp +++ b/src/corelib/io/qfileinfo.cpp @@ -573,10 +573,13 @@ QString QFileInfo::canonicalFilePath() const QString QFileInfo::absolutePath() const { Q_D(const QFileInfo); - if (d->data->fileName.isEmpty()) + + if (!d->data->fileEngine) { + return QLatin1String(""); + } else if (d->data->fileName.isEmpty()) { qWarning("QFileInfo::absolutePath: Constructed with empty filename"); - if(!d->data->fileEngine) return QLatin1String(""); + } return d->getFileName(QAbstractFileEngine::AbsolutePathName); } -- cgit v0.12 From d5a3866d20507967e14ed34930f08ce6248000e5 Mon Sep 17 00:00:00 2001 From: Carlos Manuel Duclos Vergara Date: Wed, 3 Feb 2010 10:14:26 +0100 Subject: Adding my changes. --- dist/changes-4.6.2 | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dist/changes-4.6.2 b/dist/changes-4.6.2 index 4f46a1f..0548e98 100644 --- a/dist/changes-4.6.2 +++ b/dist/changes-4.6.2 @@ -128,7 +128,10 @@ Qt for Windows Qt for Mac OS X --------------- - - + - [QTBUG-7312]: Menubar and dock disappear after hiding a fullscreen widget on Cocoa. + - [QTBUG-7522]: Drawing fake buttons using QMacStyle+QStyleOptionViewItemV4 lead to crash. + - [QTBUG-7625]: Calling showFullScreen() then showNormal() on a widget results in top menu hiding. + Qt for Embedded Linux --------------------- -- cgit v0.12 From 4f97685cef49fea0ea0614b6972241c497b4b1a2 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Fri, 29 Jan 2010 11:12:48 +0100 Subject: QNAM HTTP: Fix bug related to re-sending a request Thanks Nils Jeisecke for report and proposed fix. Task-number: QTBUG-7713 Reviewed-by: thiago --- src/network/access/qhttpnetworkconnection.cpp | 8 ++++++- .../access/qhttpnetworkconnectionchannel.cpp | 27 ++++++++++++++-------- .../access/qhttpnetworkconnectionchannel_p.h | 2 ++ 3 files changed, 27 insertions(+), 10 deletions(-) diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index fff7097..cc6a1c8 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -688,8 +688,14 @@ void QHttpNetworkConnectionPrivate::_q_startNextRequest() if (channels[i].resendCurrent) { channels[i].resendCurrent = false; channels[i].state = QHttpNetworkConnectionChannel::IdleState; - if (channels[i].reply) + if (channels[i].reply) { + + // if this is not possible, error will be emitted and connection terminated + if (!channels[i].resetUploadData()) + continue; + channels[i].sendRequest(); + } } } diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index b80ae9a..70a301d 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -674,15 +674,8 @@ void QHttpNetworkConnectionChannel::handleStatus() case 407: // proxy auth required if (connection->d_func()->handleAuthenticateChallenge(socket, reply, (statusCode == 407), resend)) { if (resend) { - QNonContiguousByteDevice* uploadByteDevice = request.uploadByteDevice(); - if (uploadByteDevice) { - if (uploadByteDevice->reset()) { - written = 0; - } else { - connection->d_func()->emitReplyError(socket, reply, QNetworkReply::ContentReSendError); - break; - } - } + if (!resetUploadData()) + break; reply->d_func()->eraseData(); @@ -712,6 +705,22 @@ void QHttpNetworkConnectionChannel::handleStatus() } } +bool QHttpNetworkConnectionChannel::resetUploadData() +{ + QNonContiguousByteDevice* uploadByteDevice = request.uploadByteDevice(); + if (!uploadByteDevice) + return true; + + if (uploadByteDevice->reset()) { + written = 0; + return true; + } else { + connection->d_func()->emitReplyError(socket, reply, QNetworkReply::ContentReSendError); + return false; + } +} + + void QHttpNetworkConnectionChannel::pipelineInto(HttpMessagePair &pair) { // this is only called for simple GET diff --git a/src/network/access/qhttpnetworkconnectionchannel_p.h b/src/network/access/qhttpnetworkconnectionchannel_p.h index c30c236..75ab50d 100644 --- a/src/network/access/qhttpnetworkconnectionchannel_p.h +++ b/src/network/access/qhttpnetworkconnectionchannel_p.h @@ -151,6 +151,8 @@ public: void allDone(); // reply header + body have been read void handleStatus(); // called from allDone() + bool resetUploadData(); // return true if resetting worked or there is no upload data + void pipelineInto(HttpMessagePair &pair); void requeueCurrentlyPipelinedRequests(); void detectPipeliningSupport(); -- cgit v0.12 From a9ffa944f8599db0559e9d07509a3778f49bbc2a Mon Sep 17 00:00:00 2001 From: Denis Dzyubenko Date: Wed, 3 Feb 2010 11:36:14 +0100 Subject: Updated my changelog entry Reviewed-by: trustme --- dist/changes-4.6.2 | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/dist/changes-4.6.2 b/dist/changes-4.6.2 index 0548e98..d768988 100644 --- a/dist/changes-4.6.2 +++ b/dist/changes-4.6.2 @@ -40,8 +40,8 @@ Optimizations QtCore ------ - - foo - * bar + - QXmlStreamWriter + * [QTBUG-6893] Fixed adding extra Byte Order Marks when writing to a xml file. QtGui ----- @@ -49,6 +49,9 @@ QtGui - foo * bar + * [QTBUG-7029] Fixed a crash when re-creating QApplication object due to a + dangling gesture manager pointer. + QtDBus ------ @@ -118,7 +121,9 @@ Qt for Linux/X11 ---------------- * Fix a bug where QPixmap::serialNumber was not set on a transformed pixmap in Qt/X11. - - + + * Fixed a crash when an input method tries to create a widget after the + application is destroyed. Qt for Windows -------------- -- cgit v0.12 From 48d040b3536dbce06f54c90da489a5308bee3870 Mon Sep 17 00:00:00 2001 From: Bastian Bense Date: Wed, 3 Feb 2010 11:57:38 +0100 Subject: Cleared up QEvent documentation for QGraphicsSceneDragDropEvent events. Added the "(QGraphicsSceneDragDropEvent)" behind the documentation of the QGraphicsSceneDrag*-type events. Without this hint it gives the impression that you can't access the data being dragged within eventFilter()s. Task-number: QTBUG-7547 Reviewed-by: Benjamin Poulain --- src/corelib/kernel/qcoreevent.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/corelib/kernel/qcoreevent.cpp b/src/corelib/kernel/qcoreevent.cpp index 3f69b4f..3500b63 100644 --- a/src/corelib/kernel/qcoreevent.cpp +++ b/src/corelib/kernel/qcoreevent.cpp @@ -133,10 +133,10 @@ QT_BEGIN_NAMESPACE \value GrabKeyboard Item gains keyboard grab (QGraphicsItem only). \value GrabMouse Item gains mouse grab (QGraphicsItem only). \value GraphicsSceneContextMenu Context popup menu over a graphics scene (QGraphicsSceneContextMenuEvent). - \value GraphicsSceneDragEnter The cursor enters a graphics scene during a drag and drop operation. - \value GraphicsSceneDragLeave The cursor leaves a graphics scene during a drag and drop operation. - \value GraphicsSceneDragMove A drag and drop operation is in progress over a scene. - \value GraphicsSceneDrop A drag and drop operation is completed over a scene. + \value GraphicsSceneDragEnter The cursor enters a graphics scene during a drag and drop operation (QGraphicsSceneDragDropEvent). + \value GraphicsSceneDragLeave The cursor leaves a graphics scene during a drag and drop operation (QGraphicsSceneDragDropEvent). + \value GraphicsSceneDragMove A drag and drop operation is in progress over a scene (QGraphicsSceneDragDropEvent). + \value GraphicsSceneDrop A drag and drop operation is completed over a scene (QGraphicsSceneDragDropEvent). \value GraphicsSceneHelp The user requests help for a graphics scene (QHelpEvent). \value GraphicsSceneHoverEnter The mouse cursor enters a hover item in a graphics scene (QGraphicsSceneHoverEvent). \value GraphicsSceneHoverLeave The mouse cursor leaves a hover item in a graphics scene (QGraphicsSceneHoverEvent). -- cgit v0.12 From 7cfece145418864b415a91d5b872e65660eb3090 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Wed, 3 Feb 2010 10:34:46 +0100 Subject: QTcpServer: Clarify thread affinity of incoming QTcpSocket We had some bugreports and support requests related to misunderstandings about this. Reviewed-by: Peter Hartmann Reviewed-by: David Boddie --- src/network/socket/qtcpserver.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/network/socket/qtcpserver.cpp b/src/network/socket/qtcpserver.cpp index 47a998c..404eee7 100644 --- a/src/network/socket/qtcpserver.cpp +++ b/src/network/socket/qtcpserver.cpp @@ -513,6 +513,10 @@ bool QTcpServer::hasPendingConnections() const 0 is returned if this function is called when there are no pending connections. + \note The returned QTcpSocket object cannot be used from another + thread. If you want to use an incoming connection from another thread, + you need to override incomingConnection(). + \sa hasPendingConnections() */ QTcpSocket *QTcpServer::nextPendingConnection() @@ -543,6 +547,11 @@ QTcpSocket *QTcpServer::nextPendingConnection() may not be usable with native socket functions, and should only be used with QTcpSocket::setSocketDescriptor(). + \note If you want to handle an incoming connection as a new QTcpSocket + object in another thread you have to pass the socketDescriptor + to the other thread and create the QTcpSocket object there and + use its setSocketDescriptor() method. + \sa newConnection(), nextPendingConnection() */ void QTcpServer::incomingConnection(int socketDescriptor) -- cgit v0.12 From 05a1573eddc6dc404631c9d16474c81aa4cea569 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Wed, 3 Feb 2010 14:56:15 +0100 Subject: Fixed QFileInfo::absolutePath() warning when running "qmake -project" Task-number: QTBUG-7176 Reviewed-by: Benjamin Poulain --- qmake/project.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qmake/project.cpp b/qmake/project.cpp index c2e033e..4ce8ba4 100644 --- a/qmake/project.cpp +++ b/qmake/project.cpp @@ -3067,7 +3067,7 @@ QStringList &QMakeProject::values(const QString &_var, QMap Date: Wed, 13 Jan 2010 17:05:45 +0100 Subject: Fix regression in clipped icon text on Windows This was really caused by a change done to the font engine in 4.6. We now return a pixel less for the font height in multiple widgets. Some of these should be addressed in a separate patch. This patch simply ensures that the text rect is not clipped, but will not alter the height of the widget. Task-number: QTBUG-7662 Reviewed-by: prasanth --- src/gui/styles/qcommonstyle.cpp | 2 +- tests/auto/qstyle/tst_qstyle.cpp | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/gui/styles/qcommonstyle.cpp b/src/gui/styles/qcommonstyle.cpp index 739a70b..74d3ec3 100644 --- a/src/gui/styles/qcommonstyle.cpp +++ b/src/gui/styles/qcommonstyle.cpp @@ -1608,7 +1608,7 @@ void QCommonStyle::drawControl(ControlElement element, const QStyleOption *opt, if (toolbutton->toolButtonStyle == Qt::ToolButtonTextUnderIcon) { pr.setHeight(pmSize.height() + 6); - tr.adjust(0, pr.height() - 1, 0, -3); + tr.adjust(0, pr.height() - 1, 0, -2); pr.translate(shiftX, shiftY); if (!hasArrow) { proxy()->drawItemPixmap(p, pr, Qt::AlignCenter, pm); diff --git a/tests/auto/qstyle/tst_qstyle.cpp b/tests/auto/qstyle/tst_qstyle.cpp index 51fde74..a76c82d 100644 --- a/tests/auto/qstyle/tst_qstyle.cpp +++ b/tests/auto/qstyle/tst_qstyle.cpp @@ -52,6 +52,7 @@ #include #include #include +#include #include #include @@ -445,6 +446,8 @@ void tst_QStyle::testWindowsVistaStyle() if (QSysInfo::WindowsVersion == QSysInfo::WV_VISTA) testPainting(&vistastyle, "vista"); + else if (QSysInfo::WindowsVersion == QSysInfo::WV_XP) + testPainting(&vistastyle, "xp"); #endif } @@ -460,6 +463,7 @@ void comparePixmap(const QString &filename, const QPixmap &pixmap) void tst_QStyle::testPainting(QStyle *style, const QString &platform) { +qDebug("TEST PAINTING"); //Test Menu QString fileName = "images/" + platform + "/menu.png"; QMenu menu; @@ -538,6 +542,19 @@ void tst_QStyle::testPainting(QStyle *style, const QString &platform) pixmap = QPixmap::grabWidget(&mdiArea); mdiArea.hide(); comparePixmap(fileName, pixmap); + + // QToolButton + fileName = "images/" + platform + "/toolbutton.png"; + QToolButton tb; + tb.setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + tb.setText("AaQqPpXx"); + tb.setIcon(style->standardPixmap(QStyle::SP_DirHomeIcon)); + tb.setStyle(style); + tb.show(); + pixmap = QPixmap::grabWidget(&tb); + tb.hide(); + comparePixmap(fileName, pixmap); + } void tst_QStyle::testMacStyle() -- cgit v0.12 From d43178ccaa38b87698e2f5a9fa0f2fb4e5f9f0ad Mon Sep 17 00:00:00 2001 From: Aleksandar Sasha Babic Date: Thu, 28 Jan 2010 11:28:53 +0100 Subject: Using RunFast mode for RVCT Now when we detect, by looking into ARMFPU, that either vfpv2 or softvfp+vfpv2 option is used, we will force using "-fpmode = fast" switch as well. This should give not just some performance improvement, but improve execution stability when vfpv2 used. Task-number: QTBUG-4893 Reviewed-by: Jason Barron --- mkspecs/common/symbian/symbian.conf | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/mkspecs/common/symbian/symbian.conf b/mkspecs/common/symbian/symbian.conf index a2933e9..b5d12fb 100644 --- a/mkspecs/common/symbian/symbian.conf +++ b/mkspecs/common/symbian/symbian.conf @@ -147,3 +147,19 @@ exists($${EPOCROOT}epoc32/release/winscw/udeb/z/system/install/Series60v5.0.sis MMP_RULES -= PAGED } } + +QMAKE_CXXFLAGS_FAST_VFP.ARMCC = --fpmode fast +# [TODO] QMAKE_CXXFLAGS_FAST_VFP.GCCE = + +symbian { + armfpu = $$find(MMP_RULES, "ARMFPU") + !isEmpty(armfpu) { + vfpv2 = $$find(MMP_RULES, "vfpv2") + !isEmpty(vfpv2) { + # we will respect fpu setting obtained from configure, but, + # if vfpv2 or softvfp+vfpv2 used we want to force RunFast VFP mode + QMAKE_CXXFLAGS.ARMCC += $${QMAKE_CXXFLAGS_FAST_VFP.ARMCC} + # [TODO] QMAKE_CXXFLAGS.GCCE += $${QMAKE_CXXFLAGS_FAST_VFP.GCCE} + } + } +} -- cgit v0.12 From 297e84fcfed524687455d3d94161bf2a32f62d37 Mon Sep 17 00:00:00 2001 From: Iain Date: Thu, 28 Jan 2010 11:05:06 +0000 Subject: Update default FPU flags on Symbian to be softvfp+vfpv2 Reviewed-by: Aleksandar Sasha Babic --- configure.exe | Bin 1178112 -> 1178112 bytes tools/configure/configureapp.cpp | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.exe b/configure.exe index ed2b0b2..e64af40 100644 Binary files a/configure.exe and b/configure.exe differ diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 7751143..8342fbe 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -1482,7 +1482,7 @@ void Configure::applySpecSpecifics() dictionary[ "QT_HOST_PREFIX" ] = dictionary[ "QT_INSTALL_PREFIX" ]; dictionary[ "QT_INSTALL_PREFIX" ] = ""; dictionary[ "QT_INSTALL_PLUGINS" ] = "\\resource\\qt\\plugins"; - dictionary[ "ARM_FPU_TYPE" ] = "softvfp"; + dictionary[ "ARM_FPU_TYPE" ] = "softvfp+vfpv2"; dictionary[ "SQL_SQLITE" ] = "yes"; dictionary[ "SQL_SQLITE_LIB" ] = "system"; -- cgit v0.12 From 7060118fe35b358ce6739734d03a285708127b60 Mon Sep 17 00:00:00 2001 From: Alessandro Portale Date: Thu, 28 Jan 2010 13:24:01 +0100 Subject: Shortening and fixing previous fix for QTBUG-6371 Shortening: Use much mor code from CommonStyle Fixing: Subtract PM_Layout[Left|Right]Margin from desktop width. This fix is anyways not relly useful. It heals some Ui designs with sizeconstrains which do not fit into mobile screens. But it will fail In following situations: Widget, and a too-long combobox in a horizontal Layout. The combobox would be cropped to Desktop width but the widget(s) left and/or right of the Combobox are not considered. So, that the Ui still is too wide. The correct fix will be for set the size policy of the combobox to something less greedy. Task-number: QTBUG-6371 Reviewed-by: Sami Merila modified: gui/styles/qs60style.cpp --- src/gui/styles/qs60style.cpp | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp index 78279d1..8dfe867 100644 --- a/src/gui/styles/qs60style.cpp +++ b/src/gui/styles/qs60style.cpp @@ -2400,21 +2400,13 @@ QSize QS60Style::sizeFromContents(ContentsType ct, const QStyleOption *opt, break; #ifndef QT_NO_COMBOBOX case CT_ComboBox: - if (const QStyleOptionComboBox *cmb = qstyleoption_cast(opt)) { - const int frameWidth = cmb->frame ? pixelMetric(PM_ComboBoxFrameWidth, opt, widget) * 2 : 0; - const int textMargins = 2*(pixelMetric(PM_FocusFrameHMargin) + 1); - const int smallestExtraWidth = 23; - // QItemDelegate::sizeHint expands the textMargins two times, thus the 2*textMargins... - const int extra = - qMax(smallestExtraWidth, 2*textMargins + pixelMetric(PM_ScrollBarExtent, opt, widget)); - sz = QSize(sz.width() + frameWidth + extra, sz.height() + frameWidth); - int maxScreenWidth = QApplication::desktop()->availableGeometry().size().width(); - if (sz.width() > maxScreenWidth) { - maxScreenWidth = maxScreenWidth - (extra + frameWidth); - sz.setWidth(maxScreenWidth); - } - } - break; + // Fixing Ui design issues with too wide QComboBoxes and greedy SizeHints + // Make sure, that the combobox says within the screen. + const QSize desktopContentSize = QApplication::desktop()->availableGeometry().size() + -QSize(pixelMetric(PM_LayoutLeftMargin) + pixelMetric(PM_LayoutRightMargin), 0); + sz = QCommonStyle::sizeFromContents(ct, opt, csz, widget). + boundedTo(desktopContentSize); + break; #endif default: sz = QCommonStyle::sizeFromContents( ct, opt, csz, widget); -- cgit v0.12 From 08c1c9ef6f30706cd574eded656f4d65a1b18db5 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Thu, 28 Jan 2010 14:06:48 +0200 Subject: Added support for ifdeffing for manufacturer in generated pkg files DEPLOYMENT.manufacturers variable can be used to define manufacturer identifiers. DEPLOYMENT.manufacturers.fail_note variable can be used to define a file that contains the text to be shown in case of failed manufacturer check. Task-number: QTBUG-7695 Reviewed-by: Janne Koskinen --- bin/patch_capabilities.pl | 25 +++++++++++++++++++++- qmake/generators/symbian/symmake.cpp | 40 ++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+), 1 deletion(-) diff --git a/bin/patch_capabilities.pl b/bin/patch_capabilities.pl index 9daa13e..8afe776 100755 --- a/bin/patch_capabilities.pl +++ b/bin/patch_capabilities.pl @@ -108,6 +108,8 @@ if (@ARGV) open (NEW_PKG, ">>".$tempPkgFileName); open (PKG, "<".$pkgFileName); + my $manufacturerElseBlock = 0; + # Parse each line. while () { @@ -133,7 +135,28 @@ if (@ARGV) # from depended packages that are also patched and therefore have different UID. if ($line =~ m/^\(0x[0-9|a-f|A-F]*\).*\{.*\}$/) { - $newLine = "" + $newLine = "\n" + } + + # Remove manufacturer ifdef + if ($line =~ m/^.*\(MANUFACTURER\)\=\(.*\).*$/) + { + $newLine = "\n"; + } + + if ($line =~ m/^ELSEIF.*MANUFACTURER$/) + { + $manufacturerElseBlock = 1; + } + + if ($manufacturerElseBlock eq 1) + { + $newLine = "\n"; + } + + if ($line =~ m/^ENDIF.*MANUFACTURER$/) + { + $manufacturerElseBlock = 0; } print NEW_PKG $newLine; diff --git a/qmake/generators/symbian/symmake.cpp b/qmake/generators/symbian/symmake.cpp index 20e2d0e..a23ec60 100644 --- a/qmake/generators/symbian/symmake.cpp +++ b/qmake/generators/symbian/symmake.cpp @@ -94,6 +94,11 @@ #define PRINT_FILE_CREATE_ERROR(filename) fprintf(stderr, "Error: Could not create '%s'\n", qPrintable(filename)); +#define MANUFACTURER_NOTE_FILE "manufacturer_note.txt" +#define DEFAULT_MANUFACTURER_NOTE \ + "The package is not supported for devices from this manufacturer. Please try the selfsigned " \ + "version of the package instead." + QString SymbianMakefileGenerator::fixPathForMmp(const QString& origPath, const QDir& parentDir) { static QString epocRootStr; @@ -354,6 +359,17 @@ void SymbianMakefileGenerator::generatePkgFile(const QString &iconFile, Deployme t << endl; } + // Begin Manufacturer block + if (!project->values("DEPLOYMENT.manufacturers").isEmpty()) { + QString manufacturerStr("IF "); + foreach(QString manufacturer, project->values("DEPLOYMENT.manufacturers")) { + manufacturerStr.append(QString("(MANUFACTURER)=(%1) OR \n ").arg(manufacturer)); + } + // Remove the final OR + manufacturerStr.chop(8); + t << manufacturerStr << endl; + } + // Install paths on the phone *** should be dynamic at some point QString installPathBin = "!:\\sys\\bin"; QString installPathResource = "!:\\resource\\apps"; @@ -428,6 +444,30 @@ void SymbianMakefileGenerator::generatePkgFile(const QString &iconFile, Deployme t << endl; } } + + // Close Manufacturer block + if (!project->values("DEPLOYMENT.manufacturers").isEmpty()) { + QString manufacturerFailNoteFile; + if (project->values("DEPLOYMENT.manufacturers.fail_note").isEmpty()) { + manufacturerFailNoteFile = QString("%1_" MANUFACTURER_NOTE_FILE).arg(uid3); + QFile ft(manufacturerFailNoteFile); + if (ft.open(QIODevice::WriteOnly)) { + generatedFiles << ft.fileName(); + QTextStream t2(&ft); + + t2 << QString(DEFAULT_MANUFACTURER_NOTE) << endl; + } else { + PRINT_FILE_CREATE_ERROR(manufacturerFailNoteFile) + } + } else { + manufacturerFailNoteFile = project->values("DEPLOYMENT.manufacturers.fail_note").join(""); + } + + t << "ELSEIF NOT(0) ; MANUFACTURER" << endl + << "\"" << fileInfo(manufacturerFailNoteFile).absoluteFilePath() << "\"" + << " - \"\", FILETEXT, TEXTEXIT" << endl + << "ENDIF ; MANUFACTURER" << endl; + } } bool SymbianMakefileGenerator::containsStartWithItem(const QChar &c, const QStringList& src) -- cgit v0.12 From 01952109596f7563b43b12554fda0e4abc9a51ef Mon Sep 17 00:00:00 2001 From: axis Date: Thu, 28 Jan 2010 16:24:08 +0100 Subject: Avoided the loss of preedit text when losing focus on Symbian. It's annoying to lose preedit (e.g. underlined) text everytime a focus switch occurs, especially because it can sometimes happen while inside the FEP menus, such as "Insert symbol". Fixed by committing the text in reset() implementation, rather than discarding it. Task: QTBUG-7439 RevBy: Sami Merila --- src/gui/inputmethod/qcoefepinputcontext_s60.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp index 793bcde..e5ab300 100644 --- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp +++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp @@ -101,11 +101,7 @@ QCoeFepInputContext::~QCoeFepInputContext() void QCoeFepInputContext::reset() { - commitTemporaryPreeditString(); - - CCoeFep* fep = CCoeEnv::Static()->Fep(); - if (fep) - fep->CancelTransaction(); + commitCurrentString(false); } void QCoeFepInputContext::ReportAknEdStateEvent(MAknEdStateObserver::EAknEdwinStateEvent aEventType) @@ -290,7 +286,6 @@ void QCoeFepInputContext::commitTemporaryPreeditString() return; commitCurrentString(false); - m_hasTempPreeditString = false; } void QCoeFepInputContext::mouseHandler( int x, QMouseEvent *event) @@ -765,6 +760,7 @@ void QCoeFepInputContext::commitCurrentString(bool triggeredBySymbian) m_preeditString.clear(); sendEvent(event); + m_hasTempPreeditString = false; m_longPress = 0; if (!triggeredBySymbian) { -- cgit v0.12 From fefbe54d8c511951da79569770275451199cd877 Mon Sep 17 00:00:00 2001 From: Alessandro Portale Date: Thu, 28 Jan 2010 18:20:05 +0100 Subject: Remove left over forward declarations Commit d8ad9ac86dac9489b553e6416329308ae7d823d0 fixing QTBUG-6408 made some of the forward declared classes unnecessary. Task-number: QTBUG-6408 Reviewed-by: Alessandro Portale --- src/gui/text/qfontengine_s60_p.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/gui/text/qfontengine_s60_p.h b/src/gui/text/qfontengine_s60_p.h index ff819e2..4748497 100644 --- a/src/gui/text/qfontengine_s60_p.h +++ b/src/gui/text/qfontengine_s60_p.h @@ -58,9 +58,6 @@ #include "qsize.h" #include -class CFbsBitmap; -class CFbsBitmapDevice; -class CFbsBitGc; class CFont; QT_BEGIN_NAMESPACE -- cgit v0.12 From af8b3c9d911a7ad6722bfa587b8a2f48c4254de3 Mon Sep 17 00:00:00 2001 From: Sami Merila Date: Fri, 29 Jan 2010 17:32:51 +0200 Subject: List item margins are too small due to invalid pixel metric value Pixel metric values for PM_FocusFrameVMargin and PM_FocusFrameHMargin were based on AVKON grid layout. Apparently, AVKON has a major difference for text margin in lists and grids. List values are almost double of what is used in the grids. Original values were poor fit for list usability, it made the text items very close to each anothre. Task-number: QTBUG-7258 Reviewed-by: Alessandro Portale --- src/gui/styles/qs60style.cpp | 16 ++++++++-------- util/s60pixelmetrics/pixel_metrics.cpp | 21 ++++++++++++++------- 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp index a40a84c..fc435e8 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,15,"QVGA Landscape"}, -{320,240,1,15,"QVGA Portrait"}, -{360,640,1,15,"NHD Landscape"}, -{640,360,1,15,"NHD Portrait"}, +{240,320,1,16,"QVGA Landscape"}, +{320,240,1,16,"QVGA Portrait"}, +{360,640,1,16,"NHD Landscape"}, +{640,360,1,16,"NHD Portrait"}, {352,800,1,12,"E90 Landscape"} // *** End of generated data *** }; @@ -104,10 +104,10 @@ 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,-909,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,3,3,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}, -{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,-909,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,4,4,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}, -{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,-909,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,5,5,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}, -{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,-909,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,5,5,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}, +{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,-909,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}, +{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,-909,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}, +{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,-909,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}, +{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,-909,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}, {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,-909,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} // *** End of generated data *** }; diff --git a/util/s60pixelmetrics/pixel_metrics.cpp b/util/s60pixelmetrics/pixel_metrics.cpp index 705c0ec..93873fb 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 = 15; +const TInt KPMMinorVersion = 16; TPixelMetricsVersion PixelMetrics::Version() { @@ -855,19 +855,26 @@ TInt PixelMetrics::PixelMetricValue(QStyle::PixelMetric metric) case QStyle::PM_FocusFrameHMargin: case QStyle::PM_FocusFrameVMargin: { - TAknLayoutRect gridRect; - gridRect.LayoutRect(mainPaneRect, AknLayoutScalable_Avkon::grid_highlight_pane(0)); - TAknLayoutRect gridRectCenter; - gridRectCenter.LayoutRect(mainPaneRect, AknLayoutScalable_Avkon::cell_highlight_pane_g1()); + TAknLayoutRect listScrollPane; + listScrollPane.LayoutRect(mainPaneRect, AknLayoutScalable_Avkon::listscroll_gen_pane(0)); + TAknLayoutRect listGenPane; + listGenPane.LayoutRect(listScrollPane.Rect(), AknLayoutScalable_Avkon::list_gen_pane(0)); + TAknLayoutRect listSinglePane; + listSinglePane.LayoutRect(listGenPane.Rect(), AknLayoutScalable_Avkon::list_single_pane(0)); + TAknLayoutText listSinglePaneText; + listSinglePaneText.LayoutText(listSinglePane.Rect(), AknLayoutScalable_Avkon::list_single_pane_t1(0)); + TAknLayoutRect highlightRect; + highlightRect.LayoutRect(listSinglePane.Rect(), AknLayoutScalable_Avkon::list_highlight_pane_cp1().LayoutLine()); // The difference of center piece from border tell the frame width. if ( value == QStyle::PM_FocusFrameHMargin) { - value = gridRect.Rect().iBr.iX - gridRectCenter.Rect().iBr.iX; + //use topleft for horizontal as S60 uses different values for right and left borders + value = listSinglePaneText.TextRect().iTl.iX - highlightRect.Rect().iTl.iX; } else { - value = gridRect.Rect().iBr.iY - gridRectCenter.Rect().iBr.iY; + value = highlightRect.Rect().iBr.iY - listSinglePaneText.TextRect().iBr.iY; } } break; -- cgit v0.12 From 94e5195c84cbe0e7b37550af3eb1540b22bf2b4a Mon Sep 17 00:00:00 2001 From: Iain Date: Fri, 29 Jan 2010 16:17:06 +0000 Subject: Remove warning about Symbian DEF files when running configure for Windows Move SYMBIAN_DEFFILES definition in the dictionary into the Symbian specific section of configure Task-number: QTBUG-6556 Reviewed-by: Simon Hausmann --- configure.exe | Bin 1178112 -> 1178112 bytes tools/configure/configureapp.cpp | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.exe b/configure.exe index e64af40..b89999b 100644 Binary files a/configure.exe and b/configure.exe differ diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 8342fbe..599c13d 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -317,7 +317,6 @@ Configure::Configure( int& argc, char** argv ) dictionary[ "OPENSSL" ] = "auto"; dictionary[ "DBUS" ] = "auto"; dictionary[ "S60" ] = "yes"; - dictionary[ "SYMBIAN_DEFFILES" ] = "yes"; dictionary[ "STYLE_WINDOWS" ] = "yes"; dictionary[ "STYLE_WINDOWSXP" ] = "auto"; @@ -1475,6 +1474,7 @@ void Configure::applySpecSpecifics() dictionary[ "XMLPATTERNS" ] = "yes"; dictionary[ "QT_GLIB" ] = "no"; dictionary[ "S60" ] = "yes"; + dictionary[ "SYMBIAN_DEFFILES" ] = "yes"; // iconv makes makes apps start and run ridiculously slowly in symbian emulator (HW not tested) // iconv_open seems to return -1 always, so something is probably missing from the platform. dictionary[ "QT_ICONV" ] = "no"; -- cgit v0.12 From f512c8a279518e992ae59c13c17453ac2769359e Mon Sep 17 00:00:00 2001 From: Aleksandar Sasha Babic Date: Fri, 29 Jan 2010 18:05:39 +0100 Subject: Fixing benchmark for Symbian The bidi.txt has to be deployed in proper way. Reviewed-by: TrustMe --- tests/benchmarks/qtext/main.cpp | 10 ++++++++++ tests/benchmarks/qtext/qtext.pro | 9 ++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/tests/benchmarks/qtext/main.cpp b/tests/benchmarks/qtext/main.cpp index 9854a9f..d4f3165 100644 --- a/tests/benchmarks/qtext/main.cpp +++ b/tests/benchmarks/qtext/main.cpp @@ -51,6 +51,12 @@ #include #include +#ifdef Q_OS_SYMBIAN +// In Symbian OS test data is located in applications private dir +// Application private dir is default serach path for files, so SRCDIR can be set to empty +#define SRCDIR "" +#endif + Q_DECLARE_METATYPE(QTextDocument*) class tst_QText: public QObject @@ -129,7 +135,11 @@ void tst_QText::shaping_data() QTest::newRow("lorem") << m_lorem; QTest::newRow("short") << QString::fromLatin1("Lorem ipsum dolor sit amet"); +#if !defined(Q_OS_SYMBIAN) QFile file(QString::fromLatin1(SRCDIR) + QLatin1String("/bidi.txt")); +#else + QFile file( SRCDIR "bidi.txt" ); +#endif QVERIFY(file.open(QFile::ReadOnly)); QByteArray data = file.readAll(); QVERIFY(data.count() > 1000); diff --git a/tests/benchmarks/qtext/qtext.pro b/tests/benchmarks/qtext/qtext.pro index ce4f604..9e8860f 100644 --- a/tests/benchmarks/qtext/qtext.pro +++ b/tests/benchmarks/qtext/qtext.pro @@ -4,4 +4,11 @@ TARGET = tst_QText SOURCES += main.cpp -DEFINES += SRCDIR=\\\"$$PWD/\\\" +symbian* { + TARGET.CAPABILITY = ALL -TCB + addFiles.sources = bidi.txt + addFiles.path = . + DEPLOYMENT += addFiles +} else { + DEFINES += SRCDIR=\\\"$$PWD/\\\" +} \ No newline at end of file -- cgit v0.12 From ca3ce9263eaef963d934d221bd1dec37e7bf0871 Mon Sep 17 00:00:00 2001 From: Iain Date: Thu, 5 Nov 2009 13:32:39 +0100 Subject: Catch by reference rather than by value Catching by value causes GCC to use the compiler support function __cxa_get_exception_ptr. This is not available in the compiler support libraries on Symbian OS prior to Symbian^3. Catching by reference avoids this problem. Reviewed-by: mread --- src/corelib/io/qdebug.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/io/qdebug.h b/src/corelib/io/qdebug.h index 1c68716..bc68599 100644 --- a/src/corelib/io/qdebug.h +++ b/src/corelib/io/qdebug.h @@ -83,7 +83,7 @@ public: if(stream->message_output) { QT_TRY { qt_message_output(stream->type, stream->buffer.toLocal8Bit().data()); - } QT_CATCH(std::bad_alloc) { /* We're out of memory - give up. */ } + } QT_CATCH(std::bad_alloc&) { /* We're out of memory - give up. */ } } delete stream; } -- cgit v0.12 From a788f7e3a04ec741d59ef458a40e39d918dc1df0 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 1 Feb 2010 10:28:00 +0100 Subject: Designer/uic/related examples: Fix source code scanning issues II. Fix spelling errors, foreach()/QString usage, explicit constructors. Reviewed-By: Joerg Bornemann --- examples/designer/taskmenuextension/tictactoedialog.h | 2 +- examples/uitools/textfinder/textfinder.cpp | 2 +- src/tools/uic/cpp/cppwriteinitialization.cpp | 6 +++--- src/tools/uic3/converter.cpp | 6 +++--- src/tools/uic3/main.cpp | 4 ++-- tools/designer/src/designer/qdesigner_server.h | 2 +- tools/designer/src/designer/versiondialog.cpp | 5 ++--- tools/designer/src/lib/shared/qdesigner_taskmenu.cpp | 2 +- tools/designer/src/plugins/widgets/q3table/q3table_plugin.h | 2 +- tools/designer/src/plugins/widgets/q3toolbar/q3toolbar_plugin.h | 2 +- tools/designer/src/plugins/widgets/q3widgets/q3widget_plugins.h | 6 +++--- .../src/plugins/widgets/q3widgetstack/q3widgetstack_plugin.h | 2 +- tools/designer/src/plugins/widgets/q3wizard/q3wizard_container.h | 2 +- tools/shared/findwidget/abstractfindwidget.h | 2 +- tools/shared/findwidget/itemviewfindwidget.h | 2 +- 15 files changed, 23 insertions(+), 24 deletions(-) diff --git a/examples/designer/taskmenuextension/tictactoedialog.h b/examples/designer/taskmenuextension/tictactoedialog.h index aeaaaf4..3d810dd 100644 --- a/examples/designer/taskmenuextension/tictactoedialog.h +++ b/examples/designer/taskmenuextension/tictactoedialog.h @@ -55,7 +55,7 @@ class TicTacToeDialog : public QDialog Q_OBJECT public: - TicTacToeDialog(TicTacToe *plugin = 0, QWidget *parent = 0); + explicit TicTacToeDialog(TicTacToe *plugin = 0, QWidget *parent = 0); QSize sizeHint() const; diff --git a/examples/uitools/textfinder/textfinder.cpp b/examples/uitools/textfinder/textfinder.cpp index 855f11f..1b7c14b 100644 --- a/examples/uitools/textfinder/textfinder.cpp +++ b/examples/uitools/textfinder/textfinder.cpp @@ -116,7 +116,7 @@ void TextFinder::on_findButton_clicked() if (isFirstTime == false) document->undo(); - if (searchString == "") { + if (searchString.isEmpty()) { QMessageBox::information(this, tr("Empty Search Field"), "The search field is empty. Please enter a word and click Find."); } else { diff --git a/src/tools/uic/cpp/cppwriteinitialization.cpp b/src/tools/uic/cpp/cppwriteinitialization.cpp index d9aff1b..8099ffa 100644 --- a/src/tools/uic/cpp/cppwriteinitialization.cpp +++ b/src/tools/uic/cpp/cppwriteinitialization.cpp @@ -2787,8 +2787,8 @@ static void generateMultiDirectiveBegin(QTextStream &outputStream, const QSet map; // bool is dummy. The idea is to sort that (always generate in the same order) by putting a set into a map - foreach (QString str, directives) - map[str] = true; + foreach (const QString &str, directives) + map.insert(str, true); if (map.size() == 1) { outputStream << "#ifndef " << map.constBegin().key() << endl; @@ -2797,7 +2797,7 @@ static void generateMultiDirectiveBegin(QTextStream &outputStream, const QSet *prop if (prop->kind() == DomProperty::Set) { QStringList flags = prop->elementSet().split(QLatin1Char('|')); QStringList v; - foreach (QString fl, flags) { + foreach (const QString &fl, flags) { QString e = WidgetInfo::resolveEnumerator(className, fl); if (e.isEmpty()) { e = m_porting->renameEnumerator(className + QLatin1String("::") + fl); @@ -1283,7 +1283,7 @@ QString Ui3Reader::fixType(const QString &t) const QString newText = t; //split type name on <>*& and whitespace QStringList typeNames = t.split(QRegExp(QLatin1String("<|>|\\*|&| ")), QString::SkipEmptyParts); - foreach(QString typeName , typeNames) { + foreach(const QString &typeName , typeNames) { QString newName = fixClassName(typeName); if( newName != typeName ) { newText.replace(typeName, newName); diff --git a/src/tools/uic3/main.cpp b/src/tools/uic3/main.cpp index 6acc94f..1ebb76a 100644 --- a/src/tools/uic3/main.cpp +++ b/src/tools/uic3/main.cpp @@ -338,10 +338,10 @@ int runUic3(int argc, char * argv[]) QStringList globalIncludes, localIncludes; ui3.computeDeps(e, globalIncludes, localIncludes, impl); - foreach (QString i, globalIncludes) + foreach (const QString &i, globalIncludes) printf("%s\n", i.toLatin1().constData()); - foreach (QString i, localIncludes) + foreach (const QString &i, localIncludes) printf("%s\n", i.toLatin1().constData()); if (impl) diff --git a/tools/designer/src/designer/qdesigner_server.h b/tools/designer/src/designer/qdesigner_server.h index d522056..90cc624 100644 --- a/tools/designer/src/designer/qdesigner_server.h +++ b/tools/designer/src/designer/qdesigner_server.h @@ -74,7 +74,7 @@ class QDesignerClient: public QObject { Q_OBJECT public: - QDesignerClient(quint16 port, QObject *parent = 0); + explicit QDesignerClient(quint16 port, QObject *parent = 0); virtual ~QDesignerClient(); private slots: diff --git a/tools/designer/src/designer/versiondialog.cpp b/tools/designer/src/designer/versiondialog.cpp index 51f546d..d9b03aa 100644 --- a/tools/designer/src/designer/versiondialog.cpp +++ b/tools/designer/src/designer/versiondialog.cpp @@ -113,15 +113,14 @@ void VersionLabel::mouseReleaseEvent(QMouseEvent *me) if (!secondStage) { m_path.lineTo(me->pos()); bool gotIt = true; - QPoint pt; - foreach(pt, hitPoints) { + foreach(const QPoint &pt, hitPoints) { if (!m_path.contains(pt)) { gotIt = false; break; } } if (gotIt) { - foreach(pt, missPoints) { + foreach(const QPoint &pt, missPoints) { if (m_path.contains(pt)) { gotIt = false; break; diff --git a/tools/designer/src/lib/shared/qdesigner_taskmenu.cpp b/tools/designer/src/lib/shared/qdesigner_taskmenu.cpp index 608ecd7..cd95f5b 100644 --- a/tools/designer/src/lib/shared/qdesigner_taskmenu.cpp +++ b/tools/designer/src/lib/shared/qdesigner_taskmenu.cpp @@ -675,7 +675,7 @@ void QDesignerTaskMenu::navigateToSlot(QDesignerFormEditorInterface *core, const QString signalSignature = selectedItem->text(0); const QStringList parameterNames = qVariantValue(selectedItem->data(0, Qt::UserRole)); - // TODO: Check wether signal is connected to slot + // TODO: Check whether signal is connected to slot integr->emitNavigateToSlot(objectName, signalSignature, parameterNames); } } diff --git a/tools/designer/src/plugins/widgets/q3table/q3table_plugin.h b/tools/designer/src/plugins/widgets/q3table/q3table_plugin.h index 9c02467..0df5e0a 100644 --- a/tools/designer/src/plugins/widgets/q3table/q3table_plugin.h +++ b/tools/designer/src/plugins/widgets/q3table/q3table_plugin.h @@ -51,7 +51,7 @@ class Q3TablePlugin: public QObject, public QDesignerCustomWidgetInterface Q_OBJECT Q_INTERFACES(QDesignerCustomWidgetInterface) public: - Q3TablePlugin(const QIcon &icon, QObject *parent = 0); + explicit Q3TablePlugin(const QIcon &icon, QObject *parent = 0); virtual QString name() const; virtual QString group() const; diff --git a/tools/designer/src/plugins/widgets/q3toolbar/q3toolbar_plugin.h b/tools/designer/src/plugins/widgets/q3toolbar/q3toolbar_plugin.h index 3b47f74..3a2ffe0 100644 --- a/tools/designer/src/plugins/widgets/q3toolbar/q3toolbar_plugin.h +++ b/tools/designer/src/plugins/widgets/q3toolbar/q3toolbar_plugin.h @@ -51,7 +51,7 @@ class Q3ToolBarPlugin: public QObject, public QDesignerCustomWidgetInterface Q_OBJECT Q_INTERFACES(QDesignerCustomWidgetInterface) public: - Q3ToolBarPlugin(const QIcon &icon, QObject *parent = 0); + explicit Q3ToolBarPlugin(const QIcon &icon, QObject *parent = 0); virtual QString name() const; virtual QString group() const; diff --git a/tools/designer/src/plugins/widgets/q3widgets/q3widget_plugins.h b/tools/designer/src/plugins/widgets/q3widgets/q3widget_plugins.h index c750cfe..f4695de 100644 --- a/tools/designer/src/plugins/widgets/q3widgets/q3widget_plugins.h +++ b/tools/designer/src/plugins/widgets/q3widgets/q3widget_plugins.h @@ -133,7 +133,7 @@ class Q3DateTimeEditPlugin: public QObject, public QDesignerCustomWidgetInterfac Q_OBJECT Q_INTERFACES(QDesignerCustomWidgetInterface) public: - Q3DateTimeEditPlugin(const QIcon &icon, QObject *parent = 0); + explicit Q3DateTimeEditPlugin(const QIcon &icon, QObject *parent = 0); virtual QString name() const; virtual QString group() const; @@ -186,7 +186,7 @@ class Q3GroupBoxPlugin: public QObject, public QDesignerCustomWidgetInterface Q_OBJECT Q_INTERFACES(QDesignerCustomWidgetInterface) public: - Q3GroupBoxPlugin(const QIcon &icon, QObject *parent = 0); + explicit Q3GroupBoxPlugin(const QIcon &icon, QObject *parent = 0); virtual ~Q3GroupBoxPlugin(); virtual QString name() const; @@ -239,7 +239,7 @@ class Q3TextBrowserPlugin: public QObject, public QDesignerCustomWidgetInterface Q_OBJECT Q_INTERFACES(QDesignerCustomWidgetInterface) public: - Q3TextBrowserPlugin(const QIcon &icon, QObject *parent = 0); + explicit Q3TextBrowserPlugin(const QIcon &icon, QObject *parent = 0); virtual QString name() const; virtual QString group() const; diff --git a/tools/designer/src/plugins/widgets/q3widgetstack/q3widgetstack_plugin.h b/tools/designer/src/plugins/widgets/q3widgetstack/q3widgetstack_plugin.h index 56dd7fb..d61b4a1 100644 --- a/tools/designer/src/plugins/widgets/q3widgetstack/q3widgetstack_plugin.h +++ b/tools/designer/src/plugins/widgets/q3widgetstack/q3widgetstack_plugin.h @@ -51,7 +51,7 @@ class Q3WidgetStackPlugin: public QObject, public QDesignerCustomWidgetInterface Q_OBJECT Q_INTERFACES(QDesignerCustomWidgetInterface) public: - Q3WidgetStackPlugin(const QIcon &icon, QObject *parent = 0); + explicit Q3WidgetStackPlugin(const QIcon &icon, QObject *parent = 0); virtual QString name() const; virtual QString group() const; diff --git a/tools/designer/src/plugins/widgets/q3wizard/q3wizard_container.h b/tools/designer/src/plugins/widgets/q3wizard/q3wizard_container.h index e8cf4fa..f96ba74 100644 --- a/tools/designer/src/plugins/widgets/q3wizard/q3wizard_container.h +++ b/tools/designer/src/plugins/widgets/q3wizard/q3wizard_container.h @@ -71,7 +71,7 @@ class Q3WizardExtraInfo: public QObject, public QDesignerExtraInfoExtension Q_OBJECT Q_INTERFACES(QDesignerExtraInfoExtension) public: - Q3WizardExtraInfo(Q3Wizard *wizard, QDesignerFormEditorInterface *core, QObject *parent); + explicit Q3WizardExtraInfo(Q3Wizard *wizard, QDesignerFormEditorInterface *core, QObject *parent); virtual QWidget *widget() const; virtual Q3Wizard *wizard() const; diff --git a/tools/shared/findwidget/abstractfindwidget.h b/tools/shared/findwidget/abstractfindwidget.h index 6cc7c94..089947d 100644 --- a/tools/shared/findwidget/abstractfindwidget.h +++ b/tools/shared/findwidget/abstractfindwidget.h @@ -70,7 +70,7 @@ public: }; Q_DECLARE_FLAGS(FindFlags, FindFlag) - AbstractFindWidget(FindFlags flags = FindFlags(), QWidget *parent = 0); + explicit AbstractFindWidget(FindFlags flags = FindFlags(), QWidget *parent = 0); virtual ~AbstractFindWidget(); bool eventFilter(QObject *object, QEvent *e); diff --git a/tools/shared/findwidget/itemviewfindwidget.h b/tools/shared/findwidget/itemviewfindwidget.h index 9d63d62..2d06df8 100644 --- a/tools/shared/findwidget/itemviewfindwidget.h +++ b/tools/shared/findwidget/itemviewfindwidget.h @@ -55,7 +55,7 @@ class ItemViewFindWidget : public AbstractFindWidget Q_OBJECT public: - ItemViewFindWidget(FindFlags flags = FindFlags(), QWidget *parent = 0); + explicit ItemViewFindWidget(FindFlags flags = FindFlags(), QWidget *parent = 0); QAbstractItemView *itemView() const { return m_itemView; } -- cgit v0.12 From b5298dcf3d29b253a31974762cc9227b25f94e93 Mon Sep 17 00:00:00 2001 From: Iain Date: Thu, 5 Nov 2009 11:22:28 +0100 Subject: Add visibility-inlines-hidden for GCCE on Symbian OS Reviewed-by: axis --- mkspecs/common/symbian/symbian.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/mkspecs/common/symbian/symbian.conf b/mkspecs/common/symbian/symbian.conf index b5d12fb..8760603 100644 --- a/mkspecs/common/symbian/symbian.conf +++ b/mkspecs/common/symbian/symbian.conf @@ -30,6 +30,7 @@ QMAKE_CXX = g++ QMAKE_CXXFLAGS = $$QMAKE_CFLAGS QMAKE_CXXFLAGS.CW = QMAKE_CXXFLAGS.ARMCC = --visibility_inlines_hidden +QMAKE_CXXFLAGS.GCCE = -fvisibility-inlines-hidden QMAKE_CXXFLAGS_DEPS = $$QMAKE_CFLAGS_DEPS QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF -- cgit v0.12 From e63ea3587444e122242a137a699b5a717d3d26bd Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Mon, 1 Feb 2010 12:51:38 +0200 Subject: Fixed no-timeout case for QProcess::waitForFinished in Symbian QProcess::waitForFinished was panicking in Symbian when timeout of -1 was supplied. Fixed it to disable timeout and block until process exit, as docs indicate it should. Task-number: QTBUG-7667 Reviewed-by: Janne Anttila --- src/corelib/io/qprocess_symbian.cpp | 41 ++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/src/corelib/io/qprocess_symbian.cpp b/src/corelib/io/qprocess_symbian.cpp index ddced73..75cde51 100644 --- a/src/corelib/io/qprocess_symbian.cpp +++ b/src/corelib/io/qprocess_symbian.cpp @@ -919,34 +919,41 @@ bool QProcessPrivate::waitForFinished(int msecs) Q_Q(QProcess); QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished(%d)", msecs); - TRequestStatus timerStatus = 0; - TRequestStatus logonStatus = 0; + TRequestStatus timerStatus = KErrNone; + TRequestStatus logonStatus = KErrNone; bool timeoutOccurred = false; // Logon to process to observe its death if (qt_rprocess_running(symbianProcess)) { symbianProcess->Logon(logonStatus); - // Create timer - RTimer timer; - timer.CreateLocal(); - TTimeIntervalMicroSeconds32 interval(msecs*1000); - timer.After(timerStatus, interval); + if (msecs < 0) { + // If timeout is negative, there is no timeout + QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Waiting (just logon)..."); + User::WaitForRequest(logonStatus); + QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Wait completed"); + } else { + // Create timer + RTimer timer; + timer.CreateLocal(); + TTimeIntervalMicroSeconds32 interval(msecs*1000); + timer.After(timerStatus, interval); - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Waiting..."); - User::WaitForRequest(logonStatus, timerStatus); - QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Wait completed"); + QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Waiting (logon + timer)..."); + User::WaitForRequest(logonStatus, timerStatus); + QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished() - Wait completed"); - if (timerStatus == KErrNone) - timeoutOccurred = true; + if (timerStatus == KErrNone) + timeoutOccurred = true; - timer.Cancel(); - timer.Close(); + timer.Cancel(); + timer.Close(); - symbianProcess->LogonCancel(logonStatus); + symbianProcess->LogonCancel(logonStatus); - // Eat cancel request completion so that it won't mess up main thread scheduling later - User::WaitForRequest(logonStatus, timerStatus); + // Eat cancel request completion so that it won't mess up main thread scheduling later + User::WaitForRequest(logonStatus, timerStatus); + } } else { QPROCESS_DEBUG_PRINT("QProcessPrivate::waitForFinished(), qt_rprocess_running returned false"); } -- cgit v0.12 From 59d3c69f0294f930c81ac14269ba20d376d1c13c Mon Sep 17 00:00:00 2001 From: Aleksandar Sasha Babic Date: Mon, 1 Feb 2010 13:04:30 +0100 Subject: Fixing test to be runnable on Symbian devices. One of the cases is using too much memory so it had to be trimmed down. Reviewed-by: TrustMe --- tests/benchmarks/qscriptengine/qscriptengine.pro | 5 +++++ tests/benchmarks/qscriptengine/tst_qscriptengine.cpp | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/tests/benchmarks/qscriptengine/qscriptengine.pro b/tests/benchmarks/qscriptengine/qscriptengine.pro index 22bbccd..df6dbb3 100644 --- a/tests/benchmarks/qscriptengine/qscriptengine.pro +++ b/tests/benchmarks/qscriptengine/qscriptengine.pro @@ -5,3 +5,8 @@ TARGET = tst_qscriptengine SOURCES += tst_qscriptengine.cpp QT += script + +symbian* { + TARGET.EPOCHEAPSIZE = 0x20000 0x2000000 // Min 128kB, Max 32MB + TARGET.EPOCSTACKSIZE = 0x14000 +} diff --git a/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp b/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp index b42a355..6c6f0b1 100644 --- a/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp +++ b/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp @@ -256,8 +256,13 @@ void tst_QScriptEngine::nativeCall() QScriptEngine eng; eng.globalObject().setProperty("fun", eng.newFunction(native_function)); QBENCHMARK{ +#if !defined(Q_OS_SYMBIAN) eng.evaluate("var w = 0; for (i = 0; i < 100000; ++i) {\n" " w += fun() + fun(); w -= fun(); fun(); w -= fun(); }"); +#else + eng.evaluate("var w = 0; for (i = 0; i < 25000; ++i) {\n" + " w += fun() + fun(); w -= fun(); fun(); w -= fun(); }"); +#endif } } -- cgit v0.12 From 60ce0571065f11d8a6bf4fe40c059bd6563d9b42 Mon Sep 17 00:00:00 2001 From: Aleksandar Sasha Babic Date: Mon, 1 Feb 2010 13:13:46 +0100 Subject: Fixing benchmark to be runnable on Symbian device Deployment had to be done in proper way. Reviewed-by: TrustMe --- tests/benchmarks/qstring/main.cpp | 6 ++++++ tests/benchmarks/qstring/qstring.pro | 6 +++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/tests/benchmarks/qstring/main.cpp b/tests/benchmarks/qstring/main.cpp index 298c784..12826eb 100644 --- a/tests/benchmarks/qstring/main.cpp +++ b/tests/benchmarks/qstring/main.cpp @@ -42,6 +42,12 @@ #include #include +#ifdef Q_OS_SYMBIAN +// In Symbian OS test data is located in applications private dir +// Application private dir is default serach path for files, so SRCDIR can be set to empty +#define SRCDIR "" +#endif + class tst_QString: public QObject { Q_OBJECT diff --git a/tests/benchmarks/qstring/qstring.pro b/tests/benchmarks/qstring/qstring.pro index 6aad1c0..2e7c86a 100644 --- a/tests/benchmarks/qstring/qstring.pro +++ b/tests/benchmarks/qstring/qstring.pro @@ -5,8 +5,12 @@ SOURCES += main.cpp wince*:{ DEFINES += SRCDIR=\\\"\\\" +} else:symbian* { + addFiles.sources = utf-8.txt + addFiles.path = . + DEPLOYMENT += addFiles + TARGET.EPOCHEAPSIZE="0x100 0x1000000" } else { DEFINES += SRCDIR=\\\"$$PWD/\\\" } - -- cgit v0.12 From 9904192f956a75a3e007e1aec99ab7db433048ce Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Mon, 1 Feb 2010 14:36:44 +0200 Subject: Fixed the URL of known issues wiki page in docs Changed the URL to be version independent. Task-number: QTBUG-7295 Reviewed-by: TrustMe --- doc/src/getting-started/known-issues.qdoc | 4 ++-- doc/src/platforms/platform-notes.qdoc | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/src/getting-started/known-issues.qdoc b/doc/src/getting-started/known-issues.qdoc index 5503ab9..b73e15d 100644 --- a/doc/src/getting-started/known-issues.qdoc +++ b/doc/src/getting-started/known-issues.qdoc @@ -52,7 +52,7 @@ on the Qt website. An overview of known issues may also be found at: - \l{http://qt.gitorious.org/qt/pages/Qt460KnownIssues} + \l{http://qt.gitorious.org/qt/pages/QtKnownIssues} {Known Issues Wiki}. \section1 Installation Issues @@ -160,6 +160,6 @@ \list \o Check known issues for Symbian at - \l{http://qt.gitorious.org/qt/pages/Qt460KnownIssues} {Known Issues Wiki}. + \l{http://qt.gitorious.org/qt/pages/QtKnownIssues} {Known Issues Wiki}. \endlist */ diff --git a/doc/src/platforms/platform-notes.qdoc b/doc/src/platforms/platform-notes.qdoc index 6ea3df4..e08bf1a 100644 --- a/doc/src/platforms/platform-notes.qdoc +++ b/doc/src/platforms/platform-notes.qdoc @@ -490,7 +490,7 @@ \section1 Known Issues Known issues can be found by visiting the - \l{http://qt.gitorious.org/qt/pages/Qt460KnownIssues}{wiki page} with an + \l{http://qt.gitorious.org/qt/pages/QtKnownIssues}{wiki page} with an up-to-date list of known issues, and the list of bugs can be found by \l{http://bugreports.qt.nokia.com/browse/QTBUG/component/19171}{browsing} the S60 component in Qt's public task tracker, located at -- cgit v0.12 From c830656616977d417972e2497ff3135bc562a660 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Thu, 28 Jan 2010 21:32:20 +0100 Subject: optimize qhash() on any modern architecture, an 1 out of 16 times needlessly executed shift (even if a long one) and xor are less expensive than a pretty much randomly 1 out of 16 times differently taken conditional jump. so simply remove the conditional. ~15% faster on Core2. Reviewed-by: joao --- src/corelib/tools/qhash.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/corelib/tools/qhash.cpp b/src/corelib/tools/qhash.cpp index d758325..6231471 100644 --- a/src/corelib/tools/qhash.cpp +++ b/src/corelib/tools/qhash.cpp @@ -68,8 +68,8 @@ static uint hash(const uchar *p, int n) while (n--) { h = (h << 4) + *p++; - if ((g = (h & 0xf0000000)) != 0) - h ^= g >> 23; + g = h & 0xf0000000; + h ^= g >> 23; h &= ~g; } return h; @@ -82,8 +82,8 @@ static uint hash(const QChar *p, int n) while (n--) { h = (h << 4) + (*p++).unicode(); - if ((g = (h & 0xf0000000)) != 0) - h ^= g >> 23; + g = h & 0xf0000000; + h ^= g >> 23; h &= ~g; } return h; -- cgit v0.12 From 0d772fe5d362861c0b59374a25ec4d0e0ba05181 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Thu, 28 Jan 2010 17:38:17 +0100 Subject: micro-optimization move up the headerdone setting, so the compiler can do tail-merging of the branches --- src/corelib/codecs/qutfcodec.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/codecs/qutfcodec.cpp b/src/corelib/codecs/qutfcodec.cpp index f7d3b06..f88fa8d 100644 --- a/src/corelib/codecs/qutfcodec.cpp +++ b/src/corelib/codecs/qutfcodec.cpp @@ -326,6 +326,7 @@ QString QUtf16::convertToUnicode(const char *chars, int len, QTextCodec::Convert ch.setCell(*chars++); } if (!headerdone) { + headerdone = true; if (endian == DetectEndianness) { if (ch == QChar::ByteOrderSwapped && endian != BigEndianness) { endian = LittleEndianness; @@ -344,7 +345,6 @@ QString QUtf16::convertToUnicode(const char *chars, int len, QTextCodec::Convert } else if (ch != QChar::ByteOrderMark) { *qch++ = ch; } - headerdone = true; } else { *qch++ = ch; } -- cgit v0.12 From 3c0370bd3d0ee83b84ea7c1cc579be51768df183 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Thu, 28 Jan 2010 17:41:13 +0100 Subject: remove pointless conditionals we already know that (endian == DetectEndianness) - we tested it 1 resp 3 lines above ... Reviewed-By: denis --- src/corelib/codecs/qutfcodec.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/corelib/codecs/qutfcodec.cpp b/src/corelib/codecs/qutfcodec.cpp index f88fa8d..7655c51 100644 --- a/src/corelib/codecs/qutfcodec.cpp +++ b/src/corelib/codecs/qutfcodec.cpp @@ -328,10 +328,9 @@ QString QUtf16::convertToUnicode(const char *chars, int len, QTextCodec::Convert if (!headerdone) { headerdone = true; if (endian == DetectEndianness) { - if (ch == QChar::ByteOrderSwapped && endian != BigEndianness) { + if (ch == QChar::ByteOrderSwapped) { endian = LittleEndianness; - } else if (ch == QChar::ByteOrderMark && endian != LittleEndianness) { - // ignore BOM + } else if (ch == QChar::ByteOrderMark) { endian = BigEndianness; } else { if (QSysInfo::ByteOrder == QSysInfo::BigEndian) { -- cgit v0.12 From 984689f01ce31cade5452633dd43f676bdb75b73 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Thu, 28 Jan 2010 18:01:47 +0100 Subject: remove duplicated calculation of length --- src/corelib/tools/qlist.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/tools/qlist.cpp b/src/corelib/tools/qlist.cpp index f1df9bd..c302857 100644 --- a/src/corelib/tools/qlist.cpp +++ b/src/corelib/tools/qlist.cpp @@ -208,7 +208,7 @@ void **QListData::append2(const QListData& l) int n = l.d->end - l.d->begin; if (n) { if (e + n > d->alloc) - realloc(grow(e + l.d->end - l.d->begin)); + realloc(grow(e + n)); d->end += n; } return d->array + e; -- cgit v0.12 From 45591e13862963fb29c13e0c5bfe39330883c579 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Fri, 29 Jan 2010 13:07:28 +0100 Subject: document QString::fromUtf16() slowness --- src/corelib/tools/qstring.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp index b9dd4d1..44e4d16 100644 --- a/src/corelib/tools/qstring.cpp +++ b/src/corelib/tools/qstring.cpp @@ -3857,6 +3857,12 @@ QString QString::fromUtf8(const char *str, int size) If \a size is -1 (default), \a unicode must be terminated with a 0. + This function checks for a Byte Order Mark (BOM). If it is missing, + host byte order is assumed. + + This function is comparatively slow. + Use QString(const ushort *, int) if possible. + QString makes a deep copy of the Unicode data. \sa utf16(), setUtf16() @@ -3923,6 +3929,9 @@ QString& QString::setUnicode(const QChar *unicode, int size) If \a unicode is 0, nothing is copied, but the string is still resized to \a size. + Note that unlike fromUtf16(), this function does not consider BOMs and + possibly differing byte ordering. + \sa utf16(), setUnicode() */ @@ -4669,6 +4678,8 @@ int QString::localeAwareCompare_helper(const QChar *data1, int length1, Returns the QString as a '\\0\'-terminated array of unsigned shorts. The result remains valid until the string is modified. + The returned string is in host byte order. + \sa unicode() */ -- cgit v0.12 From e0fda52fde32458c4a42f04bd62b5e37f14c4bfd Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Fri, 29 Jan 2010 16:44:12 +0100 Subject: optimization: get rid of QString::fromUtf16() usage QString::fromUtf16() is slow - it does a BOM check and optionally byte swapping, which is utterly pointless when converting internal data structures which are raw utf16 in host byte order anyway. so replace it with QString::fromRawData() (for short-lived strings) or QString(const QChar *, int) (otherwise) if possible. Reviewed-by: axis Reviewed-by: mariusSO Reviewed-by: Bill King --- examples/network/qftp/sym_iap_util.h | 2 +- src/corelib/io/qprocess_unix.cpp | 2 +- src/corelib/kernel/qcore_symbian_p.cpp | 2 +- src/corelib/kernel/qcoreapplication.cpp | 3 ++- src/corelib/kernel/qtranslator.cpp | 2 +- src/corelib/tools/qstring.cpp | 4 ++-- src/gui/itemviews/qitemdelegate.cpp | 2 +- src/gui/kernel/qclipboard_s60.cpp | 3 ++- src/gui/kernel/qdnd_x11.cpp | 2 +- src/gui/kernel/qmime_mac.cpp | 4 ++-- src/sql/drivers/sqlite/qsql_sqlite.cpp | 4 ++-- src/sql/kernel/qsqlresult.cpp | 2 +- tools/linguist/shared/qm.cpp | 2 +- 13 files changed, 18 insertions(+), 16 deletions(-) diff --git a/examples/network/qftp/sym_iap_util.h b/examples/network/qftp/sym_iap_util.h index 8079d2c..41e43a9 100644 --- a/examples/network/qftp/sym_iap_util.h +++ b/examples/network/qftp/sym_iap_util.h @@ -298,7 +298,7 @@ QString qt_TDesC2QStringL(const TDesC& aDescriptor) #ifdef QT_NO_UNICODE return QString::fromLocal8Bit(aDescriptor.Ptr(), aDescriptor.Length()); #else - return QString::fromUtf16(aDescriptor.Ptr(), aDescriptor.Length()); + return QString((const QChar *)aDescriptor.Ptr(), aDescriptor.Length()); #endif } diff --git a/src/corelib/io/qprocess_unix.cpp b/src/corelib/io/qprocess_unix.cpp index 0bf7d3f..5119ec0 100644 --- a/src/corelib/io/qprocess_unix.cpp +++ b/src/corelib/io/qprocess_unix.cpp @@ -783,7 +783,7 @@ bool QProcessPrivate::processStarted() // did we read an error message? if (i > 0) - q_func()->setErrorString(QString::fromUtf16(buf, i / sizeof(QChar))); + q_func()->setErrorString(QString((const QChar *)buf, i / sizeof(QChar))); return i <= 0; } diff --git a/src/corelib/kernel/qcore_symbian_p.cpp b/src/corelib/kernel/qcore_symbian_p.cpp index 5d2a6a5..0257ac4 100644 --- a/src/corelib/kernel/qcore_symbian_p.cpp +++ b/src/corelib/kernel/qcore_symbian_p.cpp @@ -71,7 +71,7 @@ Q_CORE_EXPORT QString qt_TDesC2QString(const TDesC& aDescriptor) #ifdef QT_NO_UNICODE return QString::fromLocal8Bit(aDescriptor.Ptr(), aDescriptor.Length()); #else - return QString::fromUtf16(aDescriptor.Ptr(), aDescriptor.Length()); + return QString(reinterpret_cast(aDescriptor.Ptr()), aDescriptor.Length()); #endif } diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index 005dedc..5c65416 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -2219,7 +2219,8 @@ QStringList QCoreApplication::libraryPaths() TFindFile finder(fs); TInt err = finder.FindByDir(tempPathPtr, tempPathPtr); while (err == KErrNone) { - QString foundDir = QString::fromUtf16(finder.File().Ptr(), finder.File().Length()); + QString foundDir(reinterpret_cast(finder.File().Ptr()), + finder.File().Length()); foundDir = QDir(foundDir).canonicalPath(); if (!app_libpaths->contains(foundDir)) app_libpaths->append(foundDir); diff --git a/src/corelib/kernel/qtranslator.cpp b/src/corelib/kernel/qtranslator.cpp index b7e6ea0..7d1e1d3 100644 --- a/src/corelib/kernel/qtranslator.cpp +++ b/src/corelib/kernel/qtranslator.cpp @@ -633,7 +633,7 @@ static QString getMessage(const uchar *m, const uchar *end, const char *context, end: if (!tn) return QString(); - QString str = QString::fromUtf16((const ushort *)tn, tn_length/2); + QString str = QString((const QChar *)tn, tn_length/2); if (QSysInfo::ByteOrder == QSysInfo::LittleEndian) { for (int i = 0; i < str.length(); ++i) str[i] = QChar((str.at(i).unicode() >> 8) + ((str.at(i).unicode() << 8) & 0xff00)); diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp index 44e4d16..3388500 100644 --- a/src/corelib/tools/qstring.cpp +++ b/src/corelib/tools/qstring.cpp @@ -885,7 +885,7 @@ int QString::grow(int size) QString QString::fromWCharArray(const wchar_t *string, int size) { if (sizeof(wchar_t) == sizeof(QChar)) { - return fromUtf16((ushort *)string, size); + return QString((const QChar *)string, size); } else { return fromUcs4((uint *)string, size); } @@ -7751,7 +7751,7 @@ QString QStringRef::toString() const { return QString(); if (m_size && m_position == 0 && m_size == m_string->size()) return *m_string; - return QString::fromUtf16(reinterpret_cast(m_string->unicode() + m_position), m_size); + return QString(m_string->unicode() + m_position, m_size); } diff --git a/src/gui/itemviews/qitemdelegate.cpp b/src/gui/itemviews/qitemdelegate.cpp index 6fd26a7..9069ce4 100644 --- a/src/gui/itemviews/qitemdelegate.cpp +++ b/src/gui/itemviews/qitemdelegate.cpp @@ -1033,7 +1033,7 @@ static QString qPixmapSerial(quint64 i, bool enabled) i >>= 4; } - return QString::fromUtf16(ptr, int(&arr[sizeof(arr) / sizeof(ushort)] - ptr)); + return QString((const QChar *)ptr, int(&arr[sizeof(arr) / sizeof(ushort)] - ptr)); } /*! diff --git a/src/gui/kernel/qclipboard_s60.cpp b/src/gui/kernel/qclipboard_s60.cpp index 71c355b..f07e066 100644 --- a/src/gui/kernel/qclipboard_s60.cpp +++ b/src/gui/kernel/qclipboard_s60.cpp @@ -164,7 +164,8 @@ void readFromStreamLX(QMimeData* aData,RReadStream& aStream) TCardinality mimeTypeSize; aStream >> mimeTypeSize; HBufC* mimeTypeBuf = HBufC::NewLC(aStream,mimeTypeSize); - QString mimeType = QString::fromUtf16(mimeTypeBuf->Des().Ptr(),mimeTypeBuf->Length()); + QString mimeType = QString(reinterpret_cast(mimeTypeBuf->Des().Ptr()), + mimeTypeBuf->Length()); CleanupStack::PopAndDestroy(mimeTypeBuf); // mime data TCardinality dataSize; diff --git a/src/gui/kernel/qdnd_x11.cpp b/src/gui/kernel/qdnd_x11.cpp index edab6a0..33968bd 100644 --- a/src/gui/kernel/qdnd_x11.cpp +++ b/src/gui/kernel/qdnd_x11.cpp @@ -617,7 +617,7 @@ QVariant QX11Data::xdndMimeConvertToFormat(Atom a, const QByteArray &data, const // so it should be safe to check that the second char is 0 // to verify that it is utf16 if (data.size() > 1 && data.at(1) == 0) - return QString::fromUtf16(reinterpret_cast(data.constData()), + return QString::fromRawData((const QChar *)data.constData(), data.size() / 2).split(QLatin1Char('\n')).first().toLatin1(); } } diff --git a/src/gui/kernel/qmime_mac.cpp b/src/gui/kernel/qmime_mac.cpp index 0431f2f..071f80d 100644 --- a/src/gui/kernel/qmime_mac.cpp +++ b/src/gui/kernel/qmime_mac.cpp @@ -431,8 +431,8 @@ QVariant QMacPasteboardMimeUnicodeText::convertToMime(const QString &mimetype, Q firstData.size(), CFStringGetSystemEncoding(), false)); ret = QString(str); } else if (flavor == QLatin1String("public.utf16-plain-text")) { - ret = QString::fromUtf16(reinterpret_cast(firstData.constData()), - firstData.size() / sizeof(ushort)); + ret = QString(reinterpret_cast(firstData.constData()), + firstData.size() / sizeof(QChar)); } else { qWarning("QMime::convertToMime: unhandled mimetype: %s", qPrintable(mimetype)); } diff --git a/src/sql/drivers/sqlite/qsql_sqlite.cpp b/src/sql/drivers/sqlite/qsql_sqlite.cpp index 9dbefaf..9fff552 100644 --- a/src/sql/drivers/sqlite/qsql_sqlite.cpp +++ b/src/sql/drivers/sqlite/qsql_sqlite.cpp @@ -245,9 +245,9 @@ bool QSQLiteResultPrivate::fetchNext(QSqlCachedResult::ValueCache &values, int i values[i + idx] = QVariant(QVariant::String); break; default: - values[i + idx] = QString::fromUtf16(static_cast( + values[i + idx] = QString(reinterpret_cast( sqlite3_column_text16(stmt, i)), - sqlite3_column_bytes16(stmt, i) / sizeof(ushort)); + sqlite3_column_bytes16(stmt, i) / sizeof(QChar)); break; } } diff --git a/src/sql/kernel/qsqlresult.cpp b/src/sql/kernel/qsqlresult.cpp index 5f12b55..3d63f88 100644 --- a/src/sql/kernel/qsqlresult.cpp +++ b/src/sql/kernel/qsqlresult.cpp @@ -136,7 +136,7 @@ static QString qFieldSerial(int i) i >>= 4; } - return QString::fromUtf16(arr, int(ptr - arr) + 1); + return QString(reinterpret_cast(arr), int(ptr - arr) + 1); } static bool qIsAlnum(QChar ch) diff --git a/tools/linguist/shared/qm.cpp b/tools/linguist/shared/qm.cpp index 8118576..de1284f 100644 --- a/tools/linguist/shared/qm.cpp +++ b/tools/linguist/shared/qm.cpp @@ -594,7 +594,7 @@ bool loadQM(Translator &translator, QIODevice &dev, ConversionData &cd) return false; } m += 4; - QString str = QString::fromUtf16((const ushort *)m, len/2); + QString str = QString((const QChar *)m, len/2); if (QSysInfo::ByteOrder == QSysInfo::LittleEndian) { for (int i = 0; i < str.length(); ++i) str[i] = QChar((str.at(i).unicode() >> 8) + -- cgit v0.12 From a70a97cceccced13429b88f99373650d39da2f75 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Mon, 1 Feb 2010 14:37:57 +0000 Subject: Deployed QtMultimedia.dll on Symbian Task-number: QT-2813 Reviewed-by: trustme --- src/s60installs/s60installs.pro | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/s60installs/s60installs.pro b/src/s60installs/s60installs.pro index aaecf6c..5318693 100644 --- a/src/s60installs/s60installs.pro +++ b/src/s60installs/s60installs.pro @@ -114,6 +114,10 @@ symbian: { graphicssystems_plugins.sources += qvggraphicssystem.dll } + contains(QT_CONFIG, multimedia) { + qtlibraries.sources += QtMultimedia.dll + } + BLD_INF_RULES.prj_exports += "qt.iby $$CORE_MW_LAYER_IBY_EXPORT_PATH(qt.iby)" BLD_INF_RULES.prj_exports += "qtdemoapps.iby $$CORE_APP_LAYER_IBY_EXPORT_PATH(qtdemoapps.iby)" } -- cgit v0.12 From 00c4f1dbd8484ec887aea259021f5089334f45d7 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Mon, 1 Feb 2010 17:03:12 +0200 Subject: Documented limitations of add/setLibraryPath(s) on Symbian OS Symbian OS limits applications to loading libraries only from /sys/bin directory, so user defined library paths can only be useful for locating Qt extension plugin stubs. Task-number: QTBUG-7517 Reviewed-by: Janne Koskinen --- src/corelib/kernel/qcoreapplication.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index 005dedc..e3137f0 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -2267,6 +2267,10 @@ QStringList QCoreApplication::libraryPaths() \a paths. All existing paths will be deleted and the path list will consist of the paths given in \a paths. + In Symbian this function is only useful for setting paths for + finding Qt extension plugin stubs, since the OS can only + load libraries from the \c{/sys/bin} directory. + \sa libraryPaths(), addLibraryPath(), removeLibraryPath(), QLibrary */ void QCoreApplication::setLibraryPaths(const QStringList &paths) @@ -2290,6 +2294,10 @@ void QCoreApplication::setLibraryPaths(const QStringList &paths) is \c INSTALL/plugins, where \c INSTALL is the directory where Qt was installed. + In Symbian this function is only useful for adding paths for + finding Qt extension plugin stubs, since the OS can only + load libraries from the \c{/sys/bin} directory. + \sa removeLibraryPath(), libraryPaths(), setLibraryPaths() */ void QCoreApplication::addLibraryPath(const QString &path) -- cgit v0.12 From ff8e8af2c16362ab0bbf7ea14bcdd83b711ebd46 Mon Sep 17 00:00:00 2001 From: ck Date: Mon, 1 Feb 2010 17:41:13 +0100 Subject: Assistant: Use const references in foreach loops. Reviewed-by: kh1 --- examples/assistant/simpletextviewer/findfiledialog.cpp | 4 ++-- tools/assistant/lib/qhelpcollectionhandler.cpp | 10 +++++----- tools/assistant/lib/qhelpcontentwidget.cpp | 2 +- tools/assistant/lib/qhelpdbreader.cpp | 6 +++--- tools/assistant/lib/qhelpenginecore.cpp | 6 +++--- tools/assistant/lib/qhelpgenerator.cpp | 16 ++++++++-------- tools/assistant/lib/qhelpindexwidget.cpp | 8 ++++---- tools/assistant/lib/qhelpsearchindexreader_default.cpp | 16 ++++++++-------- tools/assistant/lib/qhelpsearchindexwriter_default.cpp | 10 +++++----- tools/assistant/lib/qhelpsearchquerywidget.cpp | 12 ++++++------ tools/assistant/lib/qhelpsearchresultwidget.cpp | 4 ++-- tools/assistant/tools/assistant/centralwidget.cpp | 2 +- 12 files changed, 48 insertions(+), 48 deletions(-) diff --git a/examples/assistant/simpletextviewer/findfiledialog.cpp b/examples/assistant/simpletextviewer/findfiledialog.cpp index 939d90a..0f7bbae 100644 --- a/examples/assistant/simpletextviewer/findfiledialog.cpp +++ b/examples/assistant/simpletextviewer/findfiledialog.cpp @@ -119,7 +119,7 @@ void FindFileDialog::update() void FindFileDialog::findFiles() { - QRegExp filePattern(fileNameComboBox->currentText() + "*"); + QRegExp filePattern(fileNameComboBox->currentText() + '*'); filePattern.setPatternSyntax(QRegExp::Wildcard); QDir directory(directoryComboBox->currentText()); @@ -127,7 +127,7 @@ void FindFileDialog::findFiles() QStringList allFiles = directory.entryList(QDir::Files | QDir::NoSymLinks); QStringList matchingFiles; - foreach (QString file, allFiles) { + foreach (const QString &file, allFiles) { if (filePattern.exactMatch(file)) matchingFiles << file; } diff --git a/tools/assistant/lib/qhelpcollectionhandler.cpp b/tools/assistant/lib/qhelpcollectionhandler.cpp index fe0c417..cb7e457 100644 --- a/tools/assistant/lib/qhelpcollectionhandler.cpp +++ b/tools/assistant/lib/qhelpcollectionhandler.cpp @@ -252,7 +252,7 @@ bool QHelpCollectionHandler::createTables(QSqlQuery *query) "Key TEXT PRIMARY KEY, " "Value BLOB )"); - foreach (QString q, tables) { + foreach (const QString &q, tables) { if (!query->exec(q)) return false; } @@ -323,7 +323,7 @@ bool QHelpCollectionHandler::addCustomFilter(const QString &filterName, idsToInsert.removeAll(m_query.value(1).toString()); } - foreach (QString id, idsToInsert) { + foreach (const QString &id, idsToInsert) { m_query.prepare(QLatin1String("INSERT INTO FilterAttributeTable VALUES(NULL, ?)")); m_query.bindValue(0, id); m_query.exec(); @@ -346,7 +346,7 @@ bool QHelpCollectionHandler::addCustomFilter(const QString &filterName, m_query.bindValue(0, nameId); m_query.exec(); - foreach (QString att, attributes) { + foreach (const QString &att, attributes) { m_query.prepare(QLatin1String("INSERT INTO FilterTable VALUES(?, ?)")); m_query.bindValue(0, nameId); m_query.bindValue(1, attributeMap[att]); @@ -400,7 +400,7 @@ bool QHelpCollectionHandler::registerDocumentation(const QString &fileName) return false; addFilterAttributes(reader.filterAttributes()); - foreach (QString filterName, reader.customFilters()) + foreach (const QString &filterName, reader.customFilters()) addCustomFilter(filterName, reader.filterAttributes(filterName)); optimizeDatabase(fileName); @@ -499,7 +499,7 @@ bool QHelpCollectionHandler::addFilterAttributes(const QStringList &attributes) while (m_query.next()) atts.insert(m_query.value(0).toString()); - foreach (QString s, attributes) { + foreach (const QString &s, attributes) { if (!atts.contains(s)) { m_query.prepare(QLatin1String("INSERT INTO FilterAttributeTable VALUES(NULL, ?)")); m_query.bindValue(0, s); diff --git a/tools/assistant/lib/qhelpcontentwidget.cpp b/tools/assistant/lib/qhelpcontentwidget.cpp index 3986afb..a80dc39 100644 --- a/tools/assistant/lib/qhelpcontentwidget.cpp +++ b/tools/assistant/lib/qhelpcontentwidget.cpp @@ -253,7 +253,7 @@ void QHelpContentProvider::run() const QStringList fileNames = m_helpEngine->orderedFileNameList; m_mutex.unlock(); - foreach (QString dbFileName, fileNames) { + foreach (const QString &dbFileName, fileNames) { m_mutex.lock(); if (m_abort) { m_abort = false; diff --git a/tools/assistant/lib/qhelpdbreader.cpp b/tools/assistant/lib/qhelpdbreader.cpp index 904124b..6dd949a 100644 --- a/tools/assistant/lib/qhelpdbreader.cpp +++ b/tools/assistant/lib/qhelpdbreader.cpp @@ -515,7 +515,7 @@ QVariant QHelpDBReader::metaData(const QString &name) const QString QHelpDBReader::mergeList(const QStringList &list) const { QString str; - foreach (QString s, list) + foreach (const QString &s, list) str.append(QLatin1Char('\'') + quote(s) + QLatin1String("\', ")); if (str.endsWith(QLatin1String(", "))) str = str.left(str.length()-2); @@ -567,14 +567,14 @@ bool QHelpDBReader::createAttributesCache(const QStringList &attributes, bool needUpdate = !m_viewAttributes.count(); - foreach (QString s, attributes) + foreach (const QString &s, attributes) m_viewAttributes.remove(s); if (m_viewAttributes.count() || needUpdate) { m_viewAttributes.clear(); m_indicesCache = indexIds; } - foreach (QString s, attributes) + foreach (const QString &s, attributes) m_viewAttributes.insert(s); m_useAttributesCache = true; return true; diff --git a/tools/assistant/lib/qhelpenginecore.cpp b/tools/assistant/lib/qhelpenginecore.cpp index 0911d59..b651aa3 100644 --- a/tools/assistant/lib/qhelpenginecore.cpp +++ b/tools/assistant/lib/qhelpenginecore.cpp @@ -362,7 +362,7 @@ QString QHelpEngineCore::documentationFileName(const QString &namespaceName) if (d->setup()) { const QHelpCollectionHandler::DocInfoList docList = d->collectionHandler->registeredDocumentations(); - foreach(const QHelpCollectionHandler::DocInfo info, docList) { + foreach(const QHelpCollectionHandler::DocInfo &info, docList) { if (info.namespaceName == namespaceName) { if (QDir::isAbsolutePath(info.fileName)) return QDir::cleanPath(info.fileName); @@ -386,7 +386,7 @@ QStringList QHelpEngineCore::registeredDocumentations() const if (!d->setup()) return list; const QHelpCollectionHandler::DocInfoList docList = d->collectionHandler->registeredDocumentations(); - foreach(const QHelpCollectionHandler::DocInfo info, docList) { + foreach(const QHelpCollectionHandler::DocInfo &info, docList) { list.append(info.namespaceName); } return list; @@ -531,7 +531,7 @@ QList QHelpEngineCore::files(const QString namespaceName, url.setAuthority(namespaceName); const QStringList files = reader->files(filterAttributes, extensionFilter); - foreach (const QString file, files) { + foreach (const QString &file, files) { url.setPath(QLatin1String("/") + file); res.append(url); } diff --git a/tools/assistant/lib/qhelpgenerator.cpp b/tools/assistant/lib/qhelpgenerator.cpp index 324f67d..4b94ebf 100644 --- a/tools/assistant/lib/qhelpgenerator.cpp +++ b/tools/assistant/lib/qhelpgenerator.cpp @@ -203,7 +203,7 @@ bool QHelpGenerator::generate(QHelpDataInterface *helpData, addProgress(1.0); emit statusChanged(tr("Insert custom filters...")); - foreach (QHelpDataCustomFilter f, helpData->customFilters()) { + foreach (const QHelpDataCustomFilter &f, helpData->customFilters()) { if (!registerCustomFilter(f.name, f.filterAttributes, true)) { cleanupDB(); return false; @@ -367,7 +367,7 @@ bool QHelpGenerator::createTables() "Name Text, " "Value BLOB )"); - foreach (QString q, tables) { + foreach (const QString &q, tables) { if (!d->query->exec(q)) { d->error = tr("Cannot create tables!"); return false; @@ -629,7 +629,7 @@ bool QHelpGenerator::registerCustomFilter(const QString &filterName, idsToInsert.removeAll(d->query->value(1).toString()); } - foreach (QString id, idsToInsert) { + foreach (const QString &id, idsToInsert) { d->query->prepare(QLatin1String("INSERT INTO FilterAttributeTable VALUES(NULL, ?)")); d->query->bindValue(0, id); d->query->exec(); @@ -664,7 +664,7 @@ bool QHelpGenerator::registerCustomFilter(const QString &filterName, d->query->bindValue(0, nameId); d->query->exec(); - foreach (QString att, filterAttribs) { + foreach (const QString &att, filterAttribs) { d->query->prepare(QLatin1String("INSERT INTO FilterTable VALUES(?, ?)")); d->query->bindValue(0, nameId); d->query->bindValue(1, attributeMap[att]); @@ -687,7 +687,7 @@ bool QHelpGenerator::insertKeywords(const QList keywords, indexId = d->query->value(0).toInt() + 1; QList filterAtts; - foreach (QString filterAtt, filterAttributes) { + foreach (const QString &filterAtt, filterAttributes) { d->query->prepare(QLatin1String("SELECT Id FROM FilterAttributeTable WHERE Name=?")); d->query->bindValue(0, filterAtt); d->query->exec(); @@ -704,7 +704,7 @@ bool QHelpGenerator::insertKeywords(const QList keywords, int i = 0; d->query->exec(QLatin1String("BEGIN")); - foreach (QHelpDataIndexItem itm, keywords) { + foreach (const QHelpDataIndexItem &itm, keywords) { pos = itm.reference.indexOf(QLatin1Char('#')); fileName = itm.reference.left(pos); if (pos > -1) @@ -773,7 +773,7 @@ bool QHelpGenerator::insertContents(const QByteArray &ba, } // associate the filter attributes - foreach (QString filterAtt, filterAttributes) { + foreach (const QString &filterAtt, filterAttributes) { d->query->prepare(QLatin1String("INSERT INTO ContentsFilterTable (FilterAttributeId, ContentsId) " "SELECT Id, ? FROM FilterAttributeTable WHERE Name=?")); d->query->bindValue(0, contentId); @@ -798,7 +798,7 @@ bool QHelpGenerator::insertFilterAttributes(const QStringList &attributes) while (d->query->next()) atts.insert(d->query->value(0).toString()); - foreach (QString s, attributes) { + foreach (const QString &s, attributes) { if (!atts.contains(s)) { d->query->prepare(QLatin1String("INSERT INTO FilterAttributeTable VALUES(NULL, ?)")); d->query->bindValue(0, s); diff --git a/tools/assistant/lib/qhelpindexwidget.cpp b/tools/assistant/lib/qhelpindexwidget.cpp index 6757805..270bcdd 100644 --- a/tools/assistant/lib/qhelpindexwidget.cpp +++ b/tools/assistant/lib/qhelpindexwidget.cpp @@ -162,7 +162,7 @@ void QHelpIndexProvider::run() QSet indicesSet; m_mutex.unlock(); - foreach (QString dbFileName, m_helpEngine->fileNameReaderMap.keys()) { + foreach (const QString &dbFileName, m_helpEngine->fileNameReaderMap.keys()) { m_mutex.lock(); if (m_abort) { m_mutex.unlock(); @@ -178,7 +178,7 @@ void QHelpIndexProvider::run() QStringList lst = reader.indicesForFilter(atts); if (!lst.isEmpty()) { m_mutex.lock(); - foreach (QString s, lst) + foreach (const QString &s, lst) indicesSet.insert(s); if (m_abort) { m_mutex.unlock(); @@ -317,7 +317,7 @@ QModelIndex QHelpIndexModel::filter(const QString &filter, const QString &wildca if (!wildcard.isEmpty()) { QRegExp regExp(wildcard, Qt::CaseInsensitive); regExp.setPatternSyntax(QRegExp::Wildcard); - foreach (QString index, d->indices) { + foreach (const QString &index, d->indices) { if (index.contains(regExp)) { lst.append(index); if (perfectMatch == -1 && index.startsWith(filter, Qt::CaseInsensitive)) { @@ -332,7 +332,7 @@ QModelIndex QHelpIndexModel::filter(const QString &filter, const QString &wildca } } } else { - foreach (QString index, d->indices) { + foreach (const QString &index, d->indices) { if (index.contains(filter, Qt::CaseInsensitive)) { lst.append(index); if (perfectMatch == -1 && index.startsWith(filter, Qt::CaseInsensitive)) { diff --git a/tools/assistant/lib/qhelpsearchindexreader_default.cpp b/tools/assistant/lib/qhelpsearchindexreader_default.cpp index 1bc5feb..d08efc3 100644 --- a/tools/assistant/lib/qhelpsearchindexreader_default.cpp +++ b/tools/assistant/lib/qhelpsearchindexreader_default.cpp @@ -166,7 +166,7 @@ void Reader::filterFilesForAttributes(const QStringList &attributes) const QString fileName = it.key(); bool containsAll = true; QStringList split = fileName.split(QLatin1String("@")); - foreach (const QString attribute, attributes) { + foreach (const QString &attribute, attributes) { if (!split.contains(attribute, Qt::CaseInsensitive)) { containsAll = false; break; @@ -235,7 +235,7 @@ bool Reader::splitSearchTerm(const QString &searchTerm, QStringList *terms, void Reader::searchInIndex(const QStringList &terms) { - foreach (const QString term, terms) { + foreach (const QString &term, terms) { QVector documents; for(IndexTable::ConstIterator it = searchIndexTable.begin(); @@ -254,7 +254,7 @@ void Reader::searchInIndex(const QStringList &terms) DocumentInfo info; QString title, url; QVector documentsInfo; - foreach(const Document doc, documents) { + foreach(const Document &doc, documents) { info.docNumber = doc.docNumber; info.frequency = doc.frequency; info.documentUrl = documentList.at(doc.docNumber).at(1); @@ -519,7 +519,7 @@ void QHelpSearchIndexReaderDefault::run() mutex.unlock(); QString queryTerm; - foreach (const QHelpSearchQuery query, queryList) { + foreach (const QHelpSearchQuery &query, queryList) { if (query.fieldName == QHelpSearchQuery::DEFAULT) { queryTerm = query.wordList.at(0); break; @@ -541,7 +541,7 @@ void QHelpSearchIndexReaderDefault::run() // setup the reader m_reader.setIndexPath(indexPath); - foreach(const QString namespaceName, registeredDocs) { + foreach(const QString &namespaceName, registeredDocs) { mutex.lock(); if (m_cancel) { mutex.unlock(); @@ -553,7 +553,7 @@ void QHelpSearchIndexReaderDefault::run() const QList attributeSets = engine.filterAttributeSets(namespaceName); - foreach (QStringList attributes, attributeSets) { + foreach (const QStringList &attributes, attributeSets) { // read all index files m_reader.setIndexFile(namespaceName, attributes.join(QLatin1String("@"))); if (!m_reader.readIndex()) { @@ -577,7 +577,7 @@ void QHelpSearchIndexReaderDefault::run() QVector hits = m_reader.hits(); if (!hits.isEmpty()) { if (termSeq.isEmpty()) { - foreach (const DocumentInfo docInfo, hits) { + foreach (const DocumentInfo &docInfo, hits) { mutex.lock(); if (m_cancel) { mutex.unlock(); @@ -588,7 +588,7 @@ void QHelpSearchIndexReaderDefault::run() hitList.append(qMakePair(docInfo.documentTitle, docInfo.documentUrl)); } } else { - foreach (const DocumentInfo docInfo, hits) { + foreach (const DocumentInfo &docInfo, hits) { mutex.lock(); if (m_cancel) { mutex.unlock(); diff --git a/tools/assistant/lib/qhelpsearchindexwriter_default.cpp b/tools/assistant/lib/qhelpsearchindexwriter_default.cpp index 108be97..70999e5 100644 --- a/tools/assistant/lib/qhelpsearchindexwriter_default.cpp +++ b/tools/assistant/lib/qhelpsearchindexwriter_default.cpp @@ -104,7 +104,7 @@ bool Writer::writeIndex() const return status; QDataStream docStream(&docFile); - foreach(const QStringList list, documentList) { + foreach(const QStringList &list, documentList) { docStream << list.at(0); docStream << list.at(1); } @@ -226,7 +226,7 @@ void QHelpSearchIndexWriter::run() QStringList namespaces; Writer writer(indexPath); - foreach(const QString namespaceName, registeredDocs) { + foreach(const QString &namespaceName, registeredDocs) { mutex.lock(); if (m_cancel) { mutex.unlock(); @@ -242,7 +242,7 @@ void QHelpSearchIndexWriter::run() const QList attributeSets = engine.filterAttributeSets(namespaceName); - foreach (QStringList attributes, attributeSets) { + foreach (const QStringList &attributes, attributeSets) { // cleanup maybe old or unfinished files writer.setIndexFile(namespaceName, attributes.join(QLatin1String("@"))); writer.removeIndex(); @@ -266,7 +266,7 @@ void QHelpSearchIndexWriter::run() int docNum = 0; const QStringList documentsList(documentsSet.toList()); - foreach(const QString url, documentsList) { + foreach(const QString &url, documentsList) { if (m_cancel) return; @@ -347,7 +347,7 @@ void QHelpSearchIndexWriter::run() const QList attributeSets = engine.filterAttributeSets(namespaceName); - foreach (QStringList attributes, attributeSets) { + foreach (const QStringList &attributes, attributeSets) { writer.setIndexFile(namespaceName, attributes.join(QLatin1String("@"))); writer.removeIndex(); } diff --git a/tools/assistant/lib/qhelpsearchquerywidget.cpp b/tools/assistant/lib/qhelpsearchquerywidget.cpp index f2bb816..5782c12 100644 --- a/tools/assistant/lib/qhelpsearchquerywidget.cpp +++ b/tools/assistant/lib/qhelpsearchquerywidget.cpp @@ -148,7 +148,7 @@ private: << QLatin1String("}") << QLatin1String("~"); // make sure we won't end up with an empty string - foreach (const QString escapeChar, escapableCharsList) { + foreach (const QString &escapeChar, escapableCharsList) { if (retValue.contains(escapeChar)) retValue.replace(escapeChar, QLatin1String("")); } @@ -156,7 +156,7 @@ private: return retValue; retValue = text; // now realy escape the string... - foreach (const QString escapeChar, escapableCharsList) { + foreach (const QString &escapeChar, escapableCharsList) { if (retValue.contains(escapeChar)) retValue.replace(escapeChar, escape + escapeChar); } @@ -317,7 +317,7 @@ private slots: QStringList lst = similarQuery->text().split(exp, QString::SkipEmptyParts); if (!lst.isEmpty()) { QStringList fuzzy; - foreach (const QString term, lst) + foreach (const QString &term, lst) fuzzy += buildTermList(escapeString(term)); queryList.append(QHelpSearchQuery(QHelpSearchQuery::FUZZY, fuzzy)); } @@ -325,7 +325,7 @@ private slots: lst = withoutQuery->text().split(exp, QString::SkipEmptyParts); if (!lst.isEmpty()) { QStringList without; - foreach (const QString term, lst) + foreach (const QString &term, lst) without.append(escapeString(term)); queryList.append(QHelpSearchQuery(QHelpSearchQuery::WITHOUT, without)); } @@ -339,7 +339,7 @@ private slots: lst = allQuery->text().split(exp, QString::SkipEmptyParts); if (!lst.isEmpty()) { QStringList all; - foreach (const QString term, lst) + foreach (const QString &term, lst) all.append(escapeString(term)); queryList.append(QHelpSearchQuery(QHelpSearchQuery::ALL, all)); } @@ -347,7 +347,7 @@ private slots: lst = atLeastQuery->text().split(exp, QString::SkipEmptyParts); if (!lst.isEmpty()) { QStringList atLeast; - foreach (const QString term, lst) + foreach (const QString &term, lst) atLeast += buildTermList(escapeString(term)); queryList.append(QHelpSearchQuery(QHelpSearchQuery::ATLEAST, atLeast)); } diff --git a/tools/assistant/lib/qhelpsearchresultwidget.cpp b/tools/assistant/lib/qhelpsearchresultwidget.cpp index a3f5aed..ad540c6 100644 --- a/tools/assistant/lib/qhelpsearchresultwidget.cpp +++ b/tools/assistant/lib/qhelpsearchresultwidget.cpp @@ -73,7 +73,7 @@ public: void showResultPage(const QList hits) { - foreach (const QHelpSearchEngine::SearchHit hit, hits) + foreach (const QHelpSearchEngine::SearchHit &hit, hits) new QTreeWidgetItem(this, QStringList(hit.first) << hit.second); } @@ -118,7 +118,7 @@ public: .arg(tr("The search results may not be complete since the " "documentation is still being indexed!")); - foreach (const QHelpSearchEngine::SearchHit hit, hits) { + foreach (const QHelpSearchEngine::SearchHit &hit, hits) { htmlFile += QString(QLatin1String("
%2
%1

")) diff --git a/tools/assistant/tools/assistant/centralwidget.cpp b/tools/assistant/tools/assistant/centralwidget.cpp index 055fa1c..0e4096b 100644 --- a/tools/assistant/tools/assistant/centralwidget.cpp +++ b/tools/assistant/tools/assistant/centralwidget.cpp @@ -1118,7 +1118,7 @@ CentralWidget::highlightSearchTerms() QList queryList = searchEngine->query(); QStringList terms; - foreach (QHelpSearchQuery query, queryList) { + foreach (const QHelpSearchQuery &query, queryList) { switch (query.fieldName) { default: break; case QHelpSearchQuery::ALL: { -- cgit v0.12 From 4a22fb03ff1ab5d63e51dca791155b249321bedb Mon Sep 17 00:00:00 2001 From: ck Date: Mon, 1 Feb 2010 17:57:17 +0100 Subject: Assistant: Fix spelling mistakes. --- tools/assistant/lib/fulltextsearch/qclucene-config_p.h | 2 +- tools/assistant/lib/qhelpenginecore.cpp | 2 +- tools/assistant/lib/qhelpsearchengine.cpp | 12 ++++++------ tools/assistant/lib/qhelpsearchindexreader_default.cpp | 6 +++--- tools/assistant/lib/qhelpsearchindexwriter_default.cpp | 6 +++--- tools/assistant/lib/qhelpsearchquerywidget.cpp | 4 ++-- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/tools/assistant/lib/fulltextsearch/qclucene-config_p.h b/tools/assistant/lib/fulltextsearch/qclucene-config_p.h index 729ae72..0c70718 100644 --- a/tools/assistant/lib/fulltextsearch/qclucene-config_p.h +++ b/tools/assistant/lib/fulltextsearch/qclucene-config_p.h @@ -529,7 +529,7 @@ configure. /* Conditional Debugging */ /* #undef _CL__CND_DEBUG */ -/* debuging option */ +/* debugging option */ /* #undef _DEBUG */ /* Number of bits in a file offset, on hosts where this is settable. */ diff --git a/tools/assistant/lib/qhelpenginecore.cpp b/tools/assistant/lib/qhelpenginecore.cpp index b651aa3..066e4d5 100644 --- a/tools/assistant/lib/qhelpenginecore.cpp +++ b/tools/assistant/lib/qhelpenginecore.cpp @@ -168,7 +168,7 @@ void QHelpEngineCorePrivate::errorReceived(const QString &msg) it is removed by calling removeCustomFilter(). customFilters() returns all defined filters. - The help engine also offers the possiblity to set and read values + The help engine also offers the possibility to set and read values in a persistant way comparable to ini files or Windows registry entries. For more information see setValue() or value(). diff --git a/tools/assistant/lib/qhelpsearchengine.cpp b/tools/assistant/lib/qhelpsearchengine.cpp index c28947b..7c2635d 100644 --- a/tools/assistant/lib/qhelpsearchengine.cpp +++ b/tools/assistant/lib/qhelpsearchengine.cpp @@ -214,7 +214,7 @@ private: search term The QHelpSearchQuery class contains the field name and the associated search - term. Depending on the field the search term might get split up into seperate + term. Depending on the field the search term might get split up into separate terms to be parsed differently by the search engine. \sa QHelpSearchQueryWidget @@ -238,15 +238,15 @@ private: \value DEFAULT the default field provided by the search widget, several terms should be split and stored in the word list except search terms enclosed in quotes. - \value FUZZY a field only provided in use with clucene. Terms should be split in seperate + \value FUZZY a field only provided in use with clucene. Terms should be split in separate words and passed to the search engine. - \value WITHOUT a field only provided in use with clucene. Terms should be split in seperate + \value WITHOUT a field only provided in use with clucene. Terms should be split in separate words and passed to the search engine. - \value PHRASE a field only provided in use with clucene. Terms should not be split in seperate + \value PHRASE a field only provided in use with clucene. Terms should not be split in separate words. - \value ALL a field only provided in use with clucene. Terms should be split in seperate + \value ALL a field only provided in use with clucene. Terms should be split in separate words and passed to the search engine - \value ATLEAST a field only provided in use with clucene. Terms should be split in seperate + \value ATLEAST a field only provided in use with clucene. Terms should be split in separate words and passed to the search engine */ diff --git a/tools/assistant/lib/qhelpsearchindexreader_default.cpp b/tools/assistant/lib/qhelpsearchindexreader_default.cpp index d08efc3..d2241a5 100644 --- a/tools/assistant/lib/qhelpsearchindexreader_default.cpp +++ b/tools/assistant/lib/qhelpsearchindexreader_default.cpp @@ -180,9 +180,9 @@ void Reader::filterFilesForAttributes(const QStringList &attributes) void Reader::setIndexFile(const QString &namespaceName, const QString &attributes) { - QString extention = namespaceName + QLatin1String("@") + attributes; - indexFile = indexPath + QLatin1String("/indexdb40.") + extention; - documentFile = indexPath + QLatin1String("/indexdoc40.") + extention; + QString extension = namespaceName + QLatin1String("@") + attributes; + indexFile = indexPath + QLatin1String("/indexdb40.") + extension; + documentFile = indexPath + QLatin1String("/indexdoc40.") + extension; } bool Reader::splitSearchTerm(const QString &searchTerm, QStringList *terms, diff --git a/tools/assistant/lib/qhelpsearchindexwriter_default.cpp b/tools/assistant/lib/qhelpsearchindexwriter_default.cpp index 70999e5..6d09fb8 100644 --- a/tools/assistant/lib/qhelpsearchindexwriter_default.cpp +++ b/tools/assistant/lib/qhelpsearchindexwriter_default.cpp @@ -126,9 +126,9 @@ void Writer::removeIndex() const void Writer::setIndexFile(const QString &namespaceName, const QString &attributes) { - QString extention = namespaceName + QLatin1String("@") + attributes; - indexFile = indexPath + QLatin1String("/indexdb40.") + extention; - documentFile = indexPath + QLatin1String("/indexdoc40.") + extention; + QString extension = namespaceName + QLatin1String("@") + attributes; + indexFile = indexPath + QLatin1String("/indexdb40.") + extension; + documentFile = indexPath + QLatin1String("/indexdoc40.") + extension; } void Writer::insertInIndex(const QString &string, int docNum) diff --git a/tools/assistant/lib/qhelpsearchquerywidget.cpp b/tools/assistant/lib/qhelpsearchquerywidget.cpp index 5782c12..3c3919e 100644 --- a/tools/assistant/lib/qhelpsearchquerywidget.cpp +++ b/tools/assistant/lib/qhelpsearchquerywidget.cpp @@ -155,7 +155,7 @@ private: if (retValue.trimmed().isEmpty()) return retValue; - retValue = text; // now realy escape the string... + retValue = text; // now really escape the string... foreach (const QString &escapeChar, escapableCharsList) { if (retValue.contains(escapeChar)) retValue.replace(escapeChar, escape + escapeChar); @@ -533,7 +533,7 @@ QHelpSearchQueryWidget::~QHelpSearchQueryWidget() } /*! - Returns a list of querys to use in combination with the search engines + Returns a list of queries to use in combination with the search engines search(QList &query) function. */ QList QHelpSearchQueryWidget::query() const -- cgit v0.12 From bbe1a089c43f0b706d33bb08fbeae256b6e34d30 Mon Sep 17 00:00:00 2001 From: ck Date: Mon, 1 Feb 2010 18:10:50 +0100 Subject: Fix missing namespace. --- src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp b/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp index fed1658..6cb76ee 100644 --- a/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp +++ b/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp @@ -42,6 +42,8 @@ #include "qtextureglyphcache_gl_p.h" #include "qpaintengineex_opengl2_p.h" +QT_BEGIN_NAMESPACE + #ifdef Q_WS_WIN extern Q_GUI_EXPORT bool qt_cleartype_enabled; #endif @@ -243,3 +245,5 @@ int QGLTextureGlyphCache::glyphMargin() const return m_type == QFontEngineGlyphCache::Raster_RGBMask ? 2 : 0; #endif } + +QT_END_NAMESPACE -- cgit v0.12 From 55ca7d36d35c8ecac27b6866f40a5f2de799debd Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 9 Dec 2009 17:22:06 +0100 Subject: qmake: use isActiveConfig() instead of hand-crafting comparisons ensures consistent handling of CONFIG values. this is incompatible with 4.6.1, as it removes case-insentitivity from some of the config keys, but those pro files wouldn't be portable beyond symbian anyway, and symbian compatibility guarantees start with 4.6.2. Reviewed-by: mariusSO --- qmake/generators/symbian/symmake.cpp | 26 +++++++++++++------------- qmake/generators/symbian/symmake_abld.cpp | 2 +- qmake/generators/symbian/symmake_sbsv2.cpp | 2 +- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/qmake/generators/symbian/symmake.cpp b/qmake/generators/symbian/symmake.cpp index 20e2d0e..63676d1 100644 --- a/qmake/generators/symbian/symmake.cpp +++ b/qmake/generators/symbian/symmake.cpp @@ -261,7 +261,7 @@ bool SymbianMakefileGenerator::writeMakefile(QTextStream &t) writeMmpFile(mmpFilename, symbianLangCodes); if (targetType == TypeExe) { - if (!project->values("CONFIG").contains("no_icon", Qt::CaseInsensitive)) { + if (!project->isActiveConfig("no_icon")) { writeRegRssFile(userRssRules); writeRssFile(numberOfIcons, iconFile); writeLocFile(symbianLangCodes); @@ -375,7 +375,7 @@ void SymbianMakefileGenerator::generatePkgFile(const QString &iconFile, Deployme .arg(exeFile) << endl; // deploy rsc & reg_rsc file - if (!project->values("CONFIG").contains("no_icon", Qt::CaseInsensitive)) { + if (!project->isActiveConfig("no_icon")) { t << QString("\"%1epoc32/data/z/resource/apps/%2\" - \"%3\\%4\"") .arg(epocRoot()) .arg(fixedTarget + ".rsc") @@ -444,7 +444,7 @@ bool SymbianMakefileGenerator::containsStartWithItem(const QChar &c, const QStri void SymbianMakefileGenerator::writeCustomDefFile() { - if (targetType == TypePlugin && !project->values("CONFIG").contains("stdbinary", Qt::CaseInsensitive)) { + if (targetType == TypePlugin && !project->isActiveConfig("stdbinary")) { // Create custom def file for plugin QFile ft(QLatin1String(PLUGIN_COMMON_DEF_FILE_ACTUAL)); @@ -509,9 +509,9 @@ void SymbianMakefileGenerator::init() targetType = TypeExe; else if ((project->values("TEMPLATE")).contains("lib")) { // Check CONFIG to see if we are to build staticlib or dll - if (project->values("CONFIG").contains("staticlib") || project->values("CONFIG").contains("static")) + if (project->isActiveConfig("staticlib") || project->isActiveConfig("static")) targetType = TypeLib; - else if (project->values("CONFIG").contains("plugin")) + else if (project->isActiveConfig("plugin")) targetType = TypePlugin; else targetType = TypeDll; @@ -521,7 +521,7 @@ void SymbianMakefileGenerator::init() if (0 != project->values("TARGET.UID2").size()) { uid2 = project->first("TARGET.UID2"); - } else if (project->values("CONFIG").contains("stdbinary", Qt::CaseInsensitive)) { + } else if (project->isActiveConfig("stdbinary")) { uid2 = "0x20004C45"; } else { if (targetType == TypeExe) { @@ -788,7 +788,7 @@ void SymbianMakefileGenerator::writeMmpFile(QString &filename, QStringList &symb } t << endl; - if (!project->values("CONFIG").contains("static") && !project->values("CONFIG").contains("staticlib")) { + if (!project->isActiveConfig("static") && !project->isActiveConfig("staticlib")) { writeMmpFileLibraryPart(t); } @@ -841,7 +841,7 @@ void SymbianMakefileGenerator::writeMmpFileTargetPart(QTextStream& t) if (targetType == TypeExe) { t << MMP_TARGET "\t\t" << fixedTarget << ".exe" << endl; if (!skipTargetType) { - if (project->values("CONFIG").contains("stdbinary", Qt::CaseInsensitive)) + if (project->isActiveConfig("stdbinary")) t << MMP_TARGETTYPE "\t\tSTDEXE" << endl; else t << MMP_TARGETTYPE "\t\tEXE" << endl; @@ -849,7 +849,7 @@ void SymbianMakefileGenerator::writeMmpFileTargetPart(QTextStream& t) } else if (targetType == TypeDll || targetType == TypePlugin) { t << MMP_TARGET "\t\t" << fixedTarget << ".dll" << endl; if (!skipTargetType) { - if (project->values("CONFIG").contains("stdbinary", Qt::CaseInsensitive)) + if (project->isActiveConfig("stdbinary")) t << MMP_TARGETTYPE "\t\tSTDDLL" << endl; else t << MMP_TARGETTYPE "\t\tDLL" << endl; @@ -857,7 +857,7 @@ void SymbianMakefileGenerator::writeMmpFileTargetPart(QTextStream& t) } else if (targetType == TypeLib) { t << MMP_TARGET "\t\t" << fixedTarget << ".lib" << endl; if (!skipTargetType) { - if (project->values("CONFIG").contains("stdbinary", Qt::CaseInsensitive)) + if (project->isActiveConfig("stdbinary")) t << MMP_TARGETTYPE "\t\tSTDLIB" << endl; else t << MMP_TARGETTYPE "\t\tLIB" << endl; @@ -893,7 +893,7 @@ void SymbianMakefileGenerator::writeMmpFileTargetPart(QTextStream& t) if (0 != project->values("TARGET.EPOCALLOWDLLDATA").size()) t << MMP_EPOCALLOWDLLDATA << endl; - if (targetType == TypePlugin && !project->values("CONFIG").contains("stdbinary", Qt::CaseInsensitive)) { + if (targetType == TypePlugin && !project->isActiveConfig("stdbinary")) { // Use custom def file for Qt plugins t << "DEFFILE " PLUGIN_COMMON_DEF_FILE_FOR_MMP << endl; } @@ -909,7 +909,7 @@ void SymbianMakefileGenerator::writeMmpFileTargetPart(QTextStream& t) void SymbianMakefileGenerator::writeMmpFileResourcePart(QTextStream& t, QStringList &symbianLangCodes) { if ((targetType == TypeExe) && - !project->values("CONFIG").contains("no_icon", Qt::CaseInsensitive)) { + !project->isActiveConfig("no_icon")) { QString locTarget = fixedTarget; locTarget.append(".rss"); @@ -1267,7 +1267,7 @@ void SymbianMakefileGenerator::writeBldInfContent(QTextStream &t, bool addDeploy // Add project mmps and old style extension makefiles QString mmpTag; - if (project->values("CONFIG").contains("symbian_test", Qt::CaseInsensitive)) + if (project->isActiveConfig("symbian_test")) mmpTag = QLatin1String(BLD_INF_TAG_TESTMMPFILES); else mmpTag = QLatin1String(BLD_INF_TAG_MMPFILES); diff --git a/qmake/generators/symbian/symmake_abld.cpp b/qmake/generators/symbian/symmake_abld.cpp index d1e63cb..033bcbe 100644 --- a/qmake/generators/symbian/symmake_abld.cpp +++ b/qmake/generators/symbian/symmake_abld.cpp @@ -172,7 +172,7 @@ void SymbianAbldMakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, bool releasePlatforms.removeAll("winscw"); // No release for emulator QString testClause; - if (project->values("CONFIG").contains("symbian_test", Qt::CaseInsensitive)) + if (project->isActiveConfig("symbian_test")) testClause = QLatin1String(" test"); else testClause = QLatin1String(""); diff --git a/qmake/generators/symbian/symmake_sbsv2.cpp b/qmake/generators/symbian/symmake_sbsv2.cpp index 5adf30d..e081b19 100644 --- a/qmake/generators/symbian/symmake_sbsv2.cpp +++ b/qmake/generators/symbian/symmake_sbsv2.cpp @@ -106,7 +106,7 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo releasePlatforms.removeAll("winscw"); // No release for emulator QString testClause; - if (project->values("CONFIG").contains("symbian_test", Qt::CaseInsensitive)) + if (project->isActiveConfig("symbian_test")) testClause = QLatin1String(".test"); else testClause = QLatin1String(""); -- cgit v0.12 From ac323ef4e9d018aa9df41d8f7e81b58a3e373dbf Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 9 Dec 2009 18:37:04 +0100 Subject: qmake: Remove macro and simplify string expression previously using it also fixes a warning Reviewed-by: mariusSO --- qmake/generators/symbian/symmake.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/qmake/generators/symbian/symmake.cpp b/qmake/generators/symbian/symmake.cpp index 63676d1..caee2db 100644 --- a/qmake/generators/symbian/symmake.cpp +++ b/qmake/generators/symbian/symmake.cpp @@ -54,7 +54,6 @@ #define REGISTRATION_RESOURCE_DIRECTORY_HW "/private/10003a3f/import/apps" #define PLUGIN_COMMON_DEF_FILE_FOR_MMP "./plugin_common.def" #define PLUGIN_COMMON_DEF_FILE_ACTUAL "plugin_commonU.def" -#define BLD_INF_FILENAME_LEN (sizeof(BLD_INF_FILENAME) - 1) #define BLD_INF_RULES_BASE "BLD_INF_RULES." #define BLD_INF_TAG_PLATFORMS "prj_platforms" @@ -227,7 +226,9 @@ bool SymbianMakefileGenerator::writeMakefile(QTextStream &t) QString wrapperFileName("Makefile"); QString outputFileName = fileInfo(Option::output.fileName()).fileName(); if (outputFileName != BLD_INF_FILENAME) { - wrapperFileName.append(".").append((outputFileName.size() > BLD_INF_FILENAME_LEN && outputFileName.left(BLD_INF_FILENAME_LEN) == BLD_INF_FILENAME) ? outputFileName.mid(8) : outputFileName); + wrapperFileName.append(".").append(outputFileName.startsWith(BLD_INF_FILENAME) + ? outputFileName.mid(sizeof(BLD_INF_FILENAME)) + : outputFileName); isPrimaryMakefile = false; } -- cgit v0.12 From ec69e5ab5b74064feb88bc1f1096673227f51caa Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 9 Dec 2009 18:37:45 +0100 Subject: qmake: fix warnings missing braces, parens and spaces denoting empty loop bodies Reviewed-by: mariusSO --- qmake/generators/makefile.cpp | 3 ++- qmake/generators/makefiledeps.cpp | 34 +++++++++++++++++----------------- qmake/generators/symbian/symmake.cpp | 2 +- qmake/generators/win32/winmakefile.cpp | 3 ++- qmake/meta.cpp | 5 +++-- qmake/option.cpp | 4 ++-- 6 files changed, 27 insertions(+), 24 deletions(-) diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index 7424d1d..f1f2503 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -1824,11 +1824,12 @@ MakefileGenerator::writeExtraCompilerTargets(QTextStream &t) cleans.append(files); } } - if(!cleans.isEmpty()) + if(!cleans.isEmpty()) { if (isForSymbian()) t << valGlue(cleans, "\n\t" + del_statement, " 2> NUL\n\t" + del_statement, " 2> NUL"); else t << valGlue(cleans, "\n\t" + del_statement, "\n\t" + del_statement, ""); + } if(!wrote_clean_cmds) { for(QStringList::ConstIterator input = tmp_inputs.begin(); input != tmp_inputs.end(); ++input) { t << "\n\t" << replaceExtraCompilerVariables(tmp_clean_cmds, (*input), diff --git a/qmake/generators/makefiledeps.cpp b/qmake/generators/makefiledeps.cpp index 40304a6..21e1273 100644 --- a/qmake/generators/makefiledeps.cpp +++ b/qmake/generators/makefiledeps.cpp @@ -397,7 +397,7 @@ bool QMakeSourceFileInfo::findDeps(SourceFile *file) buffer = getBuffer(fst.st_size); for(int have_read = 0; (have_read = QT_READ(fd, buffer + buffer_len, fst.st_size - buffer_len)); - buffer_len += have_read); + buffer_len += have_read) ; QT_CLOSE(fd); } if(!buffer) @@ -418,22 +418,22 @@ bool QMakeSourceFileInfo::findDeps(SourceFile *file) ++x; if(buffer_len >= x + 12 && !strncmp(buffer + x, "includehint", 11) && (*(buffer + x + 11) == ' ' || *(buffer + x + 11) == '>')) { - for(x += 11; *(buffer + x) != '>'; ++x); + for(x += 11; *(buffer + x) != '>'; ++x) ; int inc_len = 0; - for(x += 1 ; *(buffer + x + inc_len) != '<'; ++inc_len); + for(x += 1 ; *(buffer + x + inc_len) != '<'; ++inc_len) ; *(buffer + x + inc_len) = '\0'; inc = buffer + x; } else if(buffer_len >= x + 13 && !strncmp(buffer + x, "customwidget", 12) && (*(buffer + x + 12) == ' ' || *(buffer + x + 12) == '>')) { - for(x += 13; *(buffer + x) != '>'; ++x); //skip up to > + for(x += 13; *(buffer + x) != '>'; ++x) ; //skip up to > while(x < buffer_len) { - for(x++; *(buffer + x) != '<'; ++x); //skip up to < + for(x++; *(buffer + x) != '<'; ++x) ; //skip up to < x++; if(buffer_len >= x + 7 && !strncmp(buffer+x, "header", 6) && (*(buffer + x + 6) == ' ' || *(buffer + x + 6) == '>')) { - for(x += 7; *(buffer + x) != '>'; ++x); //skip up to > + for(x += 7; *(buffer + x) != '>'; ++x) ; //skip up to > int inc_len = 0; - for(x += 1 ; *(buffer + x + inc_len) != '<'; ++inc_len); + for(x += 1 ; *(buffer + x + inc_len) != '<'; ++inc_len) ; *(buffer + x + inc_len) = '\0'; inc = buffer + x; break; @@ -448,10 +448,10 @@ bool QMakeSourceFileInfo::findDeps(SourceFile *file) for(x += 8; *(buffer + x) != '>'; ++x) { if(buffer_len >= x + 9 && *(buffer + x) == 'i' && !strncmp(buffer + x, "impldecl", 8)) { - for(x += 8; *(buffer + x) != '='; ++x); + for(x += 8; *(buffer + x) != '='; ++x) ; if(*(buffer + x) != '=') continue; - for(++x; *(buffer+x) == '\t' || *(buffer+x) == ' '; ++x); + for(++x; *(buffer+x) == '\t' || *(buffer+x) == ' '; ++x) ; char quote = 0; if(*(buffer+x) == '\'' || *(buffer+x) == '"') { quote = *(buffer + x); @@ -475,13 +475,13 @@ bool QMakeSourceFileInfo::findDeps(SourceFile *file) } } int inc_len = 0; - for(x += 1 ; *(buffer + x + inc_len) != '<'; ++inc_len); + for(x += 1 ; *(buffer + x + inc_len) != '<'; ++inc_len) ; *(buffer + x + inc_len) = '\0'; inc = buffer + x; } } //read past new line now.. - for(; x < buffer_len && !qmake_endOfLine(*(buffer + x)); ++x); + for(; x < buffer_len && !qmake_endOfLine(*(buffer + x)); ++x) ; ++line_count; } else if(file->type == QMakeSourceFileInfo::TYPE_QRC) { } else if(file->type == QMakeSourceFileInfo::TYPE_C) { @@ -494,7 +494,7 @@ bool QMakeSourceFileInfo::findDeps(SourceFile *file) ++x; if(buffer_len >= x) { if(*(buffer+x) == '/') { //c++ style comment - for(; x < buffer_len && !qmake_endOfLine(*(buffer + x)); ++x); + for(; x < buffer_len && !qmake_endOfLine(*(buffer + x)); ++x) ; beginning = 1; } else if(*(buffer+x) == '*') { //c style comment for(++x; x < buffer_len; ++x) { @@ -558,7 +558,7 @@ bool QMakeSourceFileInfo::findDeps(SourceFile *file) *(buffer+x+keyword_len) != '_') { for(x+=keyword_len; //skip spaces after keyword x < buffer_len && (*(buffer+x) == ' ' || *(buffer+x) == '\t'); - x++); + x++) ; break; } else if(qmake_endOfLine(*(buffer+x+keyword_len))) { x += keyword_len-1; @@ -579,7 +579,7 @@ bool QMakeSourceFileInfo::findDeps(SourceFile *file) x++; int inc_len; - for(inc_len = 0; *(buffer + x + inc_len) != term && !qmake_endOfLine(*(buffer + x + inc_len)); ++inc_len); + for(inc_len = 0; *(buffer + x + inc_len) != term && !qmake_endOfLine(*(buffer + x + inc_len)); ++inc_len) ; *(buffer + x + inc_len) = '\0'; inc = buffer + x; x += inc_len; @@ -594,7 +594,7 @@ bool QMakeSourceFileInfo::findDeps(SourceFile *file) int msg_len; for(msg_len = 0; (term && *(buffer + x + msg_len) != term) && - !qmake_endOfLine(*(buffer + x + msg_len)); ++msg_len); + !qmake_endOfLine(*(buffer + x + msg_len)); ++msg_len) ; *(buffer + x + msg_len) = '\0'; debug_msg(0, "%s:%d %s -- %s", file->file.local().toLatin1().constData(), line_count, keyword, buffer+x); x += msg_len; @@ -706,7 +706,7 @@ bool QMakeSourceFileInfo::findMocs(SourceFile *file) buffer = getBuffer(fst.st_size); for(int have_read = buffer_len = 0; (have_read = QT_READ(fd, buffer + buffer_len, fst.st_size - buffer_len)); - buffer_len += have_read); + buffer_len += have_read) ; QT_CLOSE(fd); } @@ -720,7 +720,7 @@ bool QMakeSourceFileInfo::findMocs(SourceFile *file) ++x; if(buffer_len >= x) { if(*(buffer + x) == '/') { //c++ style comment - for(;x < buffer_len && !qmake_endOfLine(*(buffer + x)); ++x); + for(;x < buffer_len && !qmake_endOfLine(*(buffer + x)); ++x) ; } else if(*(buffer + x) == '*') { //c style comment for(++x; x < buffer_len; ++x) { if(*(buffer + x) == 't' || *(buffer + x) == 'q') { //ignore diff --git a/qmake/generators/symbian/symmake.cpp b/qmake/generators/symbian/symmake.cpp index caee2db..4d610af 100644 --- a/qmake/generators/symbian/symmake.cpp +++ b/qmake/generators/symbian/symmake.cpp @@ -1515,7 +1515,7 @@ void SymbianMakefileGenerator::readRssRules(QString &numberOfIcons, QString &ico if (!numberOfIcons.isEmpty()) { bool ok; numberOfIcons = numberOfIcons.simplified(); - int tmp = numberOfIcons.toInt(&ok); + numberOfIcons.toInt(&ok); if (!ok) { numberOfIcons.clear(); iconFile.clear(); diff --git a/qmake/generators/win32/winmakefile.cpp b/qmake/generators/win32/winmakefile.cpp index efdf8ac..9d3b4c6 100644 --- a/qmake/generators/win32/winmakefile.cpp +++ b/qmake/generators/win32/winmakefile.cpp @@ -467,11 +467,12 @@ void Win32MakefileGenerator::processRcFileVar() resFile.replace(".rc", Option::res_ext); project->values("RES_FILE").prepend(fileInfo(resFile).fileName()); - if (!project->values("OBJECTS_DIR").isEmpty()) + if (!project->values("OBJECTS_DIR").isEmpty()) { if(project->isActiveConfig("staticlib")) project->values("RES_FILE").first().prepend(fileInfo(project->values("DESTDIR").first()).absoluteFilePath() + Option::dir_sep); else project->values("RES_FILE").first().prepend(project->values("OBJECTS_DIR").first() + Option::dir_sep); + } project->values("RES_FILE").first() = Option::fixPathToTargetOS(project->values("RES_FILE").first(), false, false); project->values("POST_TARGETDEPS") += project->values("RES_FILE"); project->values("CLEAN_FILES") += project->values("RES_FILE"); diff --git a/qmake/meta.cpp b/qmake/meta.cpp index 1c71d60..5b36682 100644 --- a/qmake/meta.cpp +++ b/qmake/meta.cpp @@ -119,10 +119,11 @@ QMakeMetaInfo::findLib(QString lib) } } } - if(ret.isNull()) + if(ret.isNull()) { debug_msg(2, "QMakeMetaInfo: Cannot find info file for %s", lib.toLatin1().constData()); - else + } else { debug_msg(2, "QMakeMetaInfo: Found info file %s for %s", ret.toLatin1().constData(), lib.toLatin1().constData()); + } return ret; } diff --git a/qmake/option.cpp b/qmake/option.cpp index 9577a28..5522a80 100644 --- a/qmake/option.cpp +++ b/qmake/option.cpp @@ -630,8 +630,8 @@ Option::fixString(QString string, uchar flags) string = string.replace('/', Option::dir_sep).replace('\\', Option::dir_sep); } - if (string.startsWith("\"") && string.endsWith("\"") || - string.startsWith("\'") && string.endsWith("\'")) + if ((string.startsWith("\"") && string.endsWith("\"")) || + (string.startsWith("\'") && string.endsWith("\'"))) string = string.mid(1, string.length()-2); //cache -- cgit v0.12 From 470b2de3e24b8eca056a31728a5e1039a9a25d79 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Fri, 18 Dec 2009 15:22:42 +0100 Subject: qmake: subdirs template: make distclean target use QMAKE_DISTCLEAN patch by David Faure Reviewed-by: mariusSO --- qmake/generators/makefile.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index f1f2503..69e1d8a 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -2536,6 +2536,7 @@ MakefileGenerator::writeSubTargets(QTextStream &t, QListisActiveConfig("no_empty_targets")) { t << "\t" << "@cd ." << endl; } -- cgit v0.12 From 5a64033f89e07505bb77d3c172597b8df3cbd762 Mon Sep 17 00:00:00 2001 From: Alessandro Portale Date: Mon, 1 Feb 2010 21:29:47 +0100 Subject: Fixed text rendering via scaled QPainter on rasterPaintEngine / Symbian Text rendering in Qt for Symbian looks very bad on a scaled QPainter. Instead of simply using a Symbian font with the right size it followed the code path that is usually used for "tricky transformation": Use the glyph outlines and rasterize them in Qt as QPainterPath. That's slow and especially ugly on Symbian since we do not (yet) get the glyph outlines from Symbian. This patch adds QFontEngineS60::setFontScale() so that QFontEngineS60 has one additional native font handle with the scaled size. The raster paint engine will call that function in case that the painter is scaled. Since we already have QFontEngineS60 specific code in the raster paint engine, this patch did not have to add #ifdefs. http://bugreports.qt.nokia.com/browse/QTBUG-7614 Task-number: QTBUG-7614 Reviewed-by: Jason Barron modified: gui/painting/qpaintengine_raster.cpp modified: gui/text/qfontengine_s60.cpp modified: gui/text/qfontengine_s60_p.h --- src/gui/painting/qpaintengine_raster.cpp | 9 ++++- src/gui/text/qfontengine_s60.cpp | 68 ++++++++++++++++++++++++-------- src/gui/text/qfontengine_s60_p.h | 10 ++++- 3 files changed, 68 insertions(+), 19 deletions(-) diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp index 3f2322e..bc56ed0 100644 --- a/src/gui/painting/qpaintengine_raster.cpp +++ b/src/gui/painting/qpaintengine_raster.cpp @@ -3081,6 +3081,8 @@ void QRasterPaintEngine::drawGlyphsS60(const QPointF &p, const QTextItemInt &ti) QVarLengthArray glyphs; QTransform matrix = s->matrix; matrix.translate(p.x(), p.y()); + if (matrix.type() == QTransform::TxScale) + fe->setFontScale(matrix.m11()); ti.fontEngine->getGlyphPositions(ti.glyphs, matrix, ti.flags, glyphs, positions); const QFixed aliasDelta = QFixed::fromReal(aliasedCoordinateDelta); @@ -3097,6 +3099,9 @@ void QRasterPaintEngine::drawGlyphsS60(const QPointF &p, const QTextItemInt &ti) alphaPenBlt(glyphBitmapBytes, glyphBitmapSize.iWidth, 8, x, y, glyphBitmapSize.iWidth, glyphBitmapSize.iHeight); } + if (matrix.type() == QTransform::TxScale) + fe->setFontScale(1.0); + return; } #endif // Q_OS_SYMBIAN && QT_NO_FREETYPE @@ -3269,7 +3274,9 @@ void QRasterPaintEngine::drawTextItem(const QPointF &p, const QTextItem &textIte } #elif defined (Q_OS_SYMBIAN) && defined(QT_NO_FREETYPE) // Q_WS_WIN || Q_WS_MAC - if (s->matrix.type() <= QTransform::TxTranslate) { + if (s->matrix.type() <= QTransform::TxTranslate + || (s->matrix.type() == QTransform::TxScale + && (qFuzzyCompare(s->matrix.m11(), s->matrix.m22())))) { drawGlyphsS60(p, ti); return; } diff --git a/src/gui/text/qfontengine_s60.cpp b/src/gui/text/qfontengine_s60.cpp index 4625667..9dd4af7 100644 --- a/src/gui/text/qfontengine_s60.cpp +++ b/src/gui/text/qfontengine_s60.cpp @@ -129,26 +129,62 @@ static inline unsigned int getChar(const QChar *str, int &i, const int len) return uc; } +CFont *QFontEngineS60::fontWithSize(qreal size) const +{ + CFont *result = 0; + TFontSpec fontSpec(qt_QString2TPtrC(QFontEngine::fontDef.family), TInt(size)); + fontSpec.iFontStyle.SetBitmapType(EAntiAliasedGlyphBitmap); + fontSpec.iFontStyle.SetPosture(QFontEngine::fontDef.style == QFont::StyleNormal?EPostureUpright:EPostureItalic); + fontSpec.iFontStyle.SetStrokeWeight(QFontEngine::fontDef.weight > QFont::Normal?EStrokeWeightBold:EStrokeWeightNormal); + const TInt errorCode = S60->screenDevice()->GetNearestFontToDesignHeightInPixels(result, fontSpec); + Q_ASSERT(result && (errorCode == 0)); + return result; +} + +void QFontEngineS60::setFontScale(qreal scale) +{ + if (qFuzzyCompare(scale, qreal(1))) { + if (!m_originalFont) + m_originalFont = fontWithSize(m_originalFontSizeInPixels); + m_activeFont = m_originalFont; + } else { + const qreal scaledFontSizeInPixels = m_originalFontSizeInPixels * scale; + if (!m_scaledFont || + (TInt(scaledFontSizeInPixels) != TInt(m_scaledFontSizeInPixels))) { + releaseFont(m_scaledFont); + m_scaledFontSizeInPixels = scaledFontSizeInPixels; + m_scaledFont = fontWithSize(m_scaledFontSizeInPixels); + } + m_activeFont = m_scaledFont; + } +} + +void QFontEngineS60::releaseFont(CFont *&font) +{ + if (font) { + S60->screenDevice()->ReleaseFont(font); + font = 0; + } +} + QFontEngineS60::QFontEngineS60(const QFontDef &request, const QFontEngineS60Extensions *extensions) : m_extensions(extensions) + , m_originalFont(0) + , m_originalFontSizeInPixels((request.pixelSize >= 0)? + request.pixelSize:pointsToPixels(request.pointSize)) + , m_scaledFont(0) + , m_scaledFontSizeInPixels(0) + , m_activeFont(0) { QFontEngine::fontDef = request; - m_fontSizeInPixels = (request.pixelSize >= 0)? - request.pixelSize:pointsToPixels(request.pointSize); - - TFontSpec fontSpec(qt_QString2TPtrC(request.family), m_fontSizeInPixels); - fontSpec.iFontStyle.SetBitmapType(EAntiAliasedGlyphBitmap); - fontSpec.iFontStyle.SetPosture(request.style == QFont::StyleNormal?EPostureUpright:EPostureItalic); - fontSpec.iFontStyle.SetStrokeWeight(request.weight > QFont::Normal?EStrokeWeightBold:EStrokeWeightNormal); - const TInt errorCode = S60->screenDevice()->GetNearestFontToDesignHeightInPixels(m_font, fontSpec); - Q_ASSERT(errorCode == 0); - + setFontScale(1.0); cache_cost = sizeof(QFontEngineS60); } QFontEngineS60::~QFontEngineS60() { - S60->screenDevice()->ReleaseFont(m_font); + releaseFont(m_originalFont); + releaseFont(m_scaledFont); } bool QFontEngineS60::stringToCMap(const QChar *characters, int len, QGlyphLayout *glyphs, int *nglyphs, QTextEngine::ShaperFlags flags) const @@ -251,12 +287,12 @@ glyph_metrics_t QFontEngineS60::boundingBox(glyph_t glyph) QFixed QFontEngineS60::ascent() const { - return m_font->FontMaxAscent(); + return m_originalFont->FontMaxAscent(); } QFixed QFontEngineS60::descent() const { - return m_font->FontMaxDescent(); + return m_originalFont->FontMaxDescent(); } QFixed QFontEngineS60::leading() const @@ -266,7 +302,7 @@ QFixed QFontEngineS60::leading() const qreal QFontEngineS60::maxCharWidth() const { - return m_font->MaxCharWidthInPixels(); + return m_originalFont->MaxCharWidthInPixels(); } const char *QFontEngineS60::name() const @@ -302,11 +338,11 @@ void QFontEngineS60::getCharacterData(glyph_t glyph, TOpenFontCharMetrics& metri const TUint specialCode = (TUint)glyph | 0x80000000; const CFont::TCharacterDataAvailability availability = - m_font->GetCharacterData(specialCode, metrics, bitmap, bitmapSize); + m_activeFont->GetCharacterData(specialCode, metrics, bitmap, bitmapSize); const glyph_t fallbackGlyph = '?'; if (availability != CFont::EAllCharacterData) { const CFont::TCharacterDataAvailability fallbackAvailability = - m_font->GetCharacterData(fallbackGlyph, metrics, bitmap, bitmapSize); + m_activeFont->GetCharacterData(fallbackGlyph, metrics, bitmap, bitmapSize); Q_ASSERT(fallbackAvailability == CFont::EAllCharacterData); } } diff --git a/src/gui/text/qfontengine_s60_p.h b/src/gui/text/qfontengine_s60_p.h index 4748497..78f8a9a 100644 --- a/src/gui/text/qfontengine_s60_p.h +++ b/src/gui/text/qfontengine_s60_p.h @@ -117,15 +117,21 @@ public: Type type() const; void getCharacterData(glyph_t glyph, TOpenFontCharMetrics& metrics, const TUint8*& bitmap, TSize& bitmapSize) const; + void setFontScale(qreal scale); private: friend class QFontPrivate; QFixed glyphAdvance(HB_Glyph glyph) const; + CFont *fontWithSize(qreal size) const; + static void releaseFont(CFont *&font); - CFont* m_font; const QFontEngineS60Extensions *m_extensions; - qreal m_fontSizeInPixels; + CFont* m_originalFont; + const qreal m_originalFontSizeInPixels; + CFont* m_scaledFont; + qreal m_scaledFontSizeInPixels; + CFont* m_activeFont; }; class QFontEngineMultiS60 : public QFontEngineMulti -- cgit v0.12 From 0db6060e54d8d5862ae0b7ffa4d3c187d30fd159 Mon Sep 17 00:00:00 2001 From: Rohan McGovern Date: Tue, 2 Feb 2010 15:25:15 +1000 Subject: Fixed compile of framecapture, simpleselector for symbian-abld winscw. `QT += network' is required to find the network headers. --- examples/webkit/framecapture/framecapture.pro | 2 +- examples/webkit/simpleselector/simpleselector.pro | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/webkit/framecapture/framecapture.pro b/examples/webkit/framecapture/framecapture.pro index 6f2f093..11960b9 100644 --- a/examples/webkit/framecapture/framecapture.pro +++ b/examples/webkit/framecapture/framecapture.pro @@ -1,4 +1,4 @@ -QT += webkit +QT += webkit network HEADERS = framecapture.h SOURCES = main.cpp \ diff --git a/examples/webkit/simpleselector/simpleselector.pro b/examples/webkit/simpleselector/simpleselector.pro index acd0ae7..3ddd6db 100644 --- a/examples/webkit/simpleselector/simpleselector.pro +++ b/examples/webkit/simpleselector/simpleselector.pro @@ -1,4 +1,4 @@ -QT += webkit +QT += webkit network FORMS = window.ui HEADERS = window.h SOURCES = main.cpp \ -- cgit v0.12 From f5f62c0bede7b4558b35b595b3b9bc11e0232fac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= Date: Mon, 18 Jan 2010 09:14:12 +0100 Subject: Improve raster graphics system performance on Mac. This fixes the qmlviewer "sluggish animations and lost mouse events" issue by making sure we don't block and wait for for the screen refresh when flushing the backing store to the screen. Review: Richard Moe Gustavsen Details: - Don't force repaints, flush the backingstore in response to a Cocoa paint/display events only. - Flush once per window. - Get the CGContext from the window (don't create a new one) - Don't call CGContextiFlush on the context. --- src/gui/kernel/qcocoasharedwindowmethods_mac_p.h | 20 ++++++++++++++++++++ src/gui/kernel/qcocoaview_mac.mm | 9 +++++---- src/gui/kernel/qt_cocoa_helpers_mac.mm | 2 +- src/gui/kernel/qwidget.cpp | 15 ++++++++++++++- src/gui/kernel/qwidget_mac.mm | 19 +++++++++++++++++++ src/gui/painting/qwindowsurface_raster.cpp | 4 +--- 6 files changed, 60 insertions(+), 9 deletions(-) diff --git a/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h b/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h index 1a265d0..7829a4e 100644 --- a/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h +++ b/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h @@ -51,6 +51,9 @@ NSPanel, while QCocoaWindow needs to inherit NSWindow rather than NSPanel). ****************************************************************************/ +#include +#include + QT_BEGIN_NAMESPACE extern Qt::MouseButton cocoaButton2QtButton(NSInteger buttonNum); // qcocoaview.mm extern QPointer qt_button_down; //qapplication_mac.cpp @@ -185,3 +188,20 @@ QT_END_NAMESPACE return [super frameViewClassForStyleMask:styleMask]; } +- (void)displayIfNeeded +{ + + QWidget *qwidget = [[QT_MANGLE_NAMESPACE(QCocoaWindowDelegate) sharedDelegate] qt_qwidgetForWindow:self]; + if (qwidget == 0) { + [super displayIfNeeded]; + return; + } + + if (QApplicationPrivate::graphicsSystem() != 0) { + if (QWidgetBackingStore *bs = qt_widget_private(qwidget)->maybeBackingStore()) + bs->sync(qwidget, qwidget->rect()); + } + [super displayIfNeeded]; +} + + diff --git a/src/gui/kernel/qcocoaview_mac.mm b/src/gui/kernel/qcocoaview_mac.mm index d255604..2c35be2 100644 --- a/src/gui/kernel/qcocoaview_mac.mm +++ b/src/gui/kernel/qcocoaview_mac.mm @@ -520,10 +520,11 @@ extern "C" { - (void)drawRect:(NSRect)aRect { if (QApplicationPrivate::graphicsSystem() != 0) { - if (QWidgetBackingStore *bs = qwidgetprivate->maybeBackingStore()) - bs->markDirty(qwidget->rect(), qwidget); - qwidgetprivate->syncBackingStore(qwidget->rect()); - return; + if (QWidgetBackingStore *bs = qwidgetprivate->maybeBackingStore()) { + // Drawing is handled on the window level + // See qcocoasharedwindowmethods_mac_p. + return; + } } CGContextRef cg = (CGContextRef)[[NSGraphicsContext currentContext] graphicsPort]; qwidgetprivate->hd = cg; diff --git a/src/gui/kernel/qt_cocoa_helpers_mac.mm b/src/gui/kernel/qt_cocoa_helpers_mac.mm index e06a810..65c04e5 100644 --- a/src/gui/kernel/qt_cocoa_helpers_mac.mm +++ b/src/gui/kernel/qt_cocoa_helpers_mac.mm @@ -1162,7 +1162,7 @@ CGContextRef qt_mac_graphicsContextFor(QWidget *widget) CGrafPtr port = GetWindowPort(qt_mac_window_for(widget)); QDBeginCGContext(port, &context); #else - CGContextRef context = (CGContextRef)[[NSGraphicsContext graphicsContextWithWindow:qt_mac_window_for(widget)] graphicsPort]; + CGContextRef context = reinterpret_cast([[qt_mac_window_for(widget) graphicsContext] graphicsPort]); #endif return context; } diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp index ffad38b..78a25ac 100644 --- a/src/gui/kernel/qwidget.cpp +++ b/src/gui/kernel/qwidget.cpp @@ -1660,7 +1660,13 @@ void QWidgetPrivate::syncBackingStore() repaint_sys(dirty); dirty = QRegion(); } else if (QWidgetBackingStore *bs = maybeBackingStore()) { +#ifdef QT_MAC_USE_COCOA + Q_UNUSED(bs); + void qt_mac_set_needs_display(QWidget *, QRegion); + qt_mac_set_needs_display(q_func(), QRegion()); +#else bs->sync(); +#endif } } @@ -1668,8 +1674,15 @@ void QWidgetPrivate::syncBackingStore(const QRegion ®ion) { if (paintOnScreen()) repaint_sys(region); - else if (QWidgetBackingStore *bs = maybeBackingStore()) + else if (QWidgetBackingStore *bs = maybeBackingStore()) { +#ifdef QT_MAC_USE_COCOA + Q_UNUSED(bs); + void qt_mac_set_needs_display(QWidget *, QRegion); + qt_mac_set_needs_display(q_func(), region); +#else bs->sync(q_func(), region); +#endif + } } void QWidgetPrivate::setUpdatesEnabled_helper(bool enable) diff --git a/src/gui/kernel/qwidget_mac.mm b/src/gui/kernel/qwidget_mac.mm index 78c1562..b5888b4 100644 --- a/src/gui/kernel/qwidget_mac.mm +++ b/src/gui/kernel/qwidget_mac.mm @@ -565,6 +565,25 @@ inline static void qt_mac_set_window_group_to_popup(OSWindowRef window) } #endif +#ifdef QT_MAC_USE_COCOA +void qt_mac_set_needs_display(QWidget *widget, QRegion region) +{ + NSView *theNSView = qt_mac_nativeview_for(widget); + if (region.isNull()) { + [theNSView setNeedsDisplay:YES]; + return; + } + + QVector rects = region.rects(); + for (int i = 0; i Date: Tue, 2 Feb 2010 09:04:39 +0100 Subject: Webkit: Fix missing namespace. --- src/3rdparty/webkit/WebCore/platform/PopupMenu.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/3rdparty/webkit/WebCore/platform/PopupMenu.h b/src/3rdparty/webkit/WebCore/platform/PopupMenu.h index f2fffb5..c150a94 100644 --- a/src/3rdparty/webkit/WebCore/platform/PopupMenu.h +++ b/src/3rdparty/webkit/WebCore/platform/PopupMenu.h @@ -44,7 +44,9 @@ typedef struct HBITMAP__* HBITMAP; namespace WebCore { class QWebPopup; } +QT_BEGIN_NAMESPACE class QGraphicsProxyWidget; +QT_END_NAMESPACE #elif PLATFORM(GTK) typedef struct _GtkMenu GtkMenu; typedef struct _GtkMenuItem GtkMenuItem; -- cgit v0.12 From 3c5222864bba1767003d5f4dd2cdcdc31b8df71c Mon Sep 17 00:00:00 2001 From: axis Date: Tue, 2 Feb 2010 09:25:34 +0100 Subject: Added some missing documentation. --- src/corelib/plugin/qlibrary.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/corelib/plugin/qlibrary.cpp b/src/corelib/plugin/qlibrary.cpp index 7112043..f2c2384 100644 --- a/src/corelib/plugin/qlibrary.cpp +++ b/src/corelib/plugin/qlibrary.cpp @@ -539,6 +539,7 @@ bool QLibraryPrivate::loadPlugin() \row \i AIX \i \c .a \row \i HP-UX \i \c .sl, \c .so (HP-UXi) \row \i Mac OS X \i \c .dylib, \c .bundle, \c .so + \row \i Symbian \i \c .dll \endtable Trailing versioning numbers on Unix are ignored. -- cgit v0.12 From 7b7f13d7ee1d5f93ee63a635c875accce918896a Mon Sep 17 00:00:00 2001 From: axis Date: Tue, 2 Feb 2010 09:26:41 +0100 Subject: Fixed def files on Symbian. --- src/s60installs/bwins/QtGuiu.def | 4 ++-- src/s60installs/eabi/QtGuiu.def | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/s60installs/bwins/QtGuiu.def b/src/s60installs/bwins/QtGuiu.def index da65230..155e3e7 100644 --- a/src/s60installs/bwins/QtGuiu.def +++ b/src/s60installs/bwins/QtGuiu.def @@ -5527,7 +5527,7 @@ EXPORTS ?invalidateChildrenSceneTransform@QGraphicsItemPrivate@@QAEXXZ @ 5526 NONAME ; void QGraphicsItemPrivate::invalidateChildrenSceneTransform(void) ?invalidateDepthRecursively@QGraphicsItemPrivate@@QAEXXZ @ 5527 NONAME ; void QGraphicsItemPrivate::invalidateDepthRecursively(void) ?invalidateFilter@QSortFilterProxyModel@@IAEXXZ @ 5528 NONAME ; void QSortFilterProxyModel::invalidateFilter(void) - ?invalidateGraphicsEffectsRecursively@QGraphicsItemPrivate@@QAEXXZ @ 5529 NONAME ; void QGraphicsItemPrivate::invalidateGraphicsEffectsRecursively(void) + ?invalidateGraphicsEffectsRecursively@QGraphicsItemPrivate@@QAEXXZ @ 5529 NONAME ABSENT ; void QGraphicsItemPrivate::invalidateGraphicsEffectsRecursively(void) ?invalidateGraphicsEffectsRecursively@QWidgetPrivate@@QAEXXZ @ 5530 NONAME ; void QWidgetPrivate::invalidateGraphicsEffectsRecursively(void) ?invalidateScene@QGraphicsView@@QAEXABVQRectF@@V?$QFlags@W4SceneLayer@QGraphicsScene@@@@@Z @ 5531 NONAME ; void QGraphicsView::invalidateScene(class QRectF const &, class QFlags) ?invalidateSizeCache@QWidgetItemV2@@AAEXXZ @ 5532 NONAME ; void QWidgetItemV2::invalidateSizeCache(void) @@ -9555,7 +9555,7 @@ EXPORTS ?setParent@QWidget@@QAEXPAV1@@Z @ 9554 NONAME ; void QWidget::setParent(class QWidget *) ?setParent@QWidget@@QAEXPAV1@V?$QFlags@W4WindowType@Qt@@@@@Z @ 9555 NONAME ; void QWidget::setParent(class QWidget *, class QFlags) ?setParentItem@QGraphicsItem@@QAEXPAV1@@Z @ 9556 NONAME ; void QGraphicsItem::setParentItem(class QGraphicsItem *) - ?setParentItemHelper@QGraphicsItemPrivate@@QAEXPAVQGraphicsItem@@@Z @ 9557 NONAME ; void QGraphicsItemPrivate::setParentItemHelper(class QGraphicsItem *) + ?setParentItemHelper@QGraphicsItemPrivate@@QAEXPAVQGraphicsItem@@@Z @ 9557 NONAME ABSENT ; void QGraphicsItemPrivate::setParentItemHelper(class QGraphicsItem *) ?setParentLayoutItem@QGraphicsLayoutItem@@QAEXPAV1@@Z @ 9558 NONAME ; void QGraphicsLayoutItem::setParentLayoutItem(class QGraphicsLayoutItem *) ?setParent_sys@QWidgetPrivate@@QAEXPAVQWidget@@V?$QFlags@W4WindowType@Qt@@@@@Z @ 9559 NONAME ; void QWidgetPrivate::setParent_sys(class QWidget *, class QFlags) ?setPasswordCharacter@QLineControl@@QAEXABVQChar@@@Z @ 9560 NONAME ; void QLineControl::setPasswordCharacter(class QChar const &) diff --git a/src/s60installs/eabi/QtGuiu.def b/src/s60installs/eabi/QtGuiu.def index 05f620c..a9a69aa 100644 --- a/src/s60installs/eabi/QtGuiu.def +++ b/src/s60installs/eabi/QtGuiu.def @@ -4671,7 +4671,7 @@ EXPORTS _ZN20QGraphicsItemPrivate18setTransformHelperERK10QTransform @ 4670 NONAME _ZN20QGraphicsItemPrivate18subFocusItemChangeEv @ 4671 NONAME _ZN20QGraphicsItemPrivate18updateAncestorFlagEN13QGraphicsItem16GraphicsItemFlagENS_12AncestorFlagEbb @ 4672 NONAME - _ZN20QGraphicsItemPrivate19setParentItemHelperEP13QGraphicsItem @ 4673 NONAME + _ZN20QGraphicsItemPrivate19setParentItemHelperEP13QGraphicsItem @ 4673 NONAME ABSENT _ZN20QGraphicsItemPrivate20removeExtraItemCacheEv @ 4674 NONAME _ZN20QGraphicsItemPrivate23appendGraphicsTransformEP18QGraphicsTransform @ 4675 NONAME _ZN20QGraphicsItemPrivate25movableAncestorIsSelectedEPK13QGraphicsItem @ 4676 NONAME @@ -11639,7 +11639,7 @@ EXPORTS _ZN19QGraphicsBlurEffect4drawEP8QPainter @ 11638 NONAME _ZN19QKeyEventTransition15setModifierMaskE6QFlagsIN2Qt16KeyboardModifierEE @ 11639 NONAME _ZN20QGraphicsItemPrivate18siblingOrderChangeEv @ 11640 NONAME - _ZN20QGraphicsItemPrivate36invalidateGraphicsEffectsRecursivelyEv @ 11641 NONAME + _ZN20QGraphicsItemPrivate36invalidateGraphicsEffectsRecursivelyEv @ 11641 NONAME ABSENT _ZN21QMouseEventTransition14setHitTestPathERK12QPainterPath @ 11642 NONAME _ZN21QMouseEventTransition15setModifierMaskE6QFlagsIN2Qt16KeyboardModifierEE @ 11643 NONAME _ZN22QGraphicsOpacityEffect4drawEP8QPainter @ 11644 NONAME -- cgit v0.12 From 54de7595a54e67efb60cdc9eb4c4ff15596c3763 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Tue, 2 Feb 2010 11:32:26 +0100 Subject: Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( a733444d3be6605552471f047558927495ff62b7 ) Changes in WebKit/qt since the last update: Fix up cherry-pick of backup restoration fix --- src/3rdparty/webkit/VERSION | 2 +- src/3rdparty/webkit/WebCore/WebCore.pro | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/3rdparty/webkit/VERSION b/src/3rdparty/webkit/VERSION index 2a3c73b..f627d9e 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 - afc4c208fe296f5a1dd0e73f2bd1273bd22d9b24 + a733444d3be6605552471f047558927495ff62b7 diff --git a/src/3rdparty/webkit/WebCore/WebCore.pro b/src/3rdparty/webkit/WebCore/WebCore.pro index f364d3b..7b0366d 100644 --- a/src/3rdparty/webkit/WebCore/WebCore.pro +++ b/src/3rdparty/webkit/WebCore/WebCore.pro @@ -6,6 +6,7 @@ symbian: { TARGET.EPOCALLOWDLLDATA=1 TARGET.EPOCHEAPSIZE = 0x20000 0x2000000 // Min 128kB, Max 32MB TARGET.CAPABILITY = All -Tcb + TARGET.UID3 = 0x200267C2 webkitlibs.sources = QtWebKit.dll webkitlibs.path = /sys/bin @@ -23,7 +24,6 @@ symbian: { DEPLOYMENT += webkitlibs webkitbackup - TARGET.UID3 = 0x200267C2 # RO text (code) section in qtwebkit.dll exceeds allocated space for gcce udeb target. # Move RW-section base address to start from 0xE00000 instead of the toolchain default 0x400000. MMP_RULES += "LINKEROPTION armcc --rw-base 0xE00000" -- cgit v0.12 From 087d79578bf3e0c8cc6e53b5babb2e935a4b9c91 Mon Sep 17 00:00:00 2001 From: Pierre Rossi Date: Tue, 2 Feb 2010 11:27:23 +0100 Subject: Add a warning when there are duplicate aliases in a resource file. It can be confusing later on when the wrong resource is accessed, and can easily be avoided by an early notice. Task-number: QTBUG-7812 Reviewed-by: hjk --- src/tools/rcc/rcc.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/tools/rcc/rcc.cpp b/src/tools/rcc/rcc.cpp index e41cd55..1f6e58f 100644 --- a/src/tools/rcc/rcc.cpp +++ b/src/tools/rcc/rcc.cpp @@ -544,6 +544,8 @@ bool RCCResourceLibrary::addFile(const QString &alias, const RCCFileInfo &file) const QString filename = nodes.at(nodes.size()-1); RCCFileInfo *s = new RCCFileInfo(file); s->m_parent = parent; + if (parent->m_children.contains(filename)) + qWarning("potential duplicate alias detected: '%s'", qPrintable(filename)); parent->m_children.insertMulti(filename, s); return true; } -- cgit v0.12 From 11bfc79b0f832f6544843ed13ef0efbcf51b22e9 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Tue, 2 Feb 2010 12:38:57 +0200 Subject: New Symbian signed sqlite3.sis with backup_registration.xml Sqlite3.sis was repackaged with backup_registration.xml to support device backup/restore on Symbian Task-number: QTBUG-7518 Reviewed-by: TrustMe --- src/s60installs/sqlite3.sis | Bin 286192 -> 286452 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/src/s60installs/sqlite3.sis b/src/s60installs/sqlite3.sis index 1785365..11e069e 100644 Binary files a/src/s60installs/sqlite3.sis and b/src/s60installs/sqlite3.sis differ -- cgit v0.12 From e4835d58381cd33fe067b05bfd6301d2246e3e67 Mon Sep 17 00:00:00 2001 From: Jens Bache-Wiig Date: Tue, 2 Feb 2010 11:46:54 +0100 Subject: Fix missing non-unified toolbar margins on Mac The tool bar appearance have regressed in 4.6 for applications that do not utilize the unified tool bar appearance. This fix restores the margin and spacing to their 4.5 appearance. Task-number: QTBUG-7831 Reviewed-by: morten --- src/gui/styles/qmacstyle_mac.mm | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/gui/styles/qmacstyle_mac.mm b/src/gui/styles/qmacstyle_mac.mm index 7a680f2..c2e5871 100644 --- a/src/gui/styles/qmacstyle_mac.mm +++ b/src/gui/styles/qmacstyle_mac.mm @@ -2411,7 +2411,10 @@ int QMacStyle::pixelMetric(PixelMetric metric, const QStyleOption *opt, const QW ret = 0; break; case PM_ToolBarFrameWidth: - ret = 0; + ret = 1; + if (QMainWindow * mainWindow = qobject_cast(widget->parent())) + if (mainWindow->unifiedTitleAndToolBarOnMac()) + ret = 0; break; default: ret = QWindowsStyle::pixelMetric(metric, opt, widget); @@ -5715,12 +5718,16 @@ QSize QMacStyle::sizeFromContents(ContentsType ct, const QStyleOption *opt, break; case CT_ToolButton: if (widget && qobject_cast(widget->parentWidget())) { - sz.rwidth() += 4; - if (sz.height() <= 32) { - // Workaround strange HIToolBar bug when getting constraints. - sz.rheight() += 1; + if (QMainWindow * mainWindow = qobject_cast(widget->parent())) { + if (mainWindow->unifiedTitleAndToolBarOnMac()) { + sz.rwidth() += 4; + if (sz.height() <= 32) { + // Workaround strange HIToolBar bug when getting constraints. + sz.rheight() += 1; + } + return sz; + } } - return sz; } sz.rwidth() += 10; sz.rheight() += 10; -- cgit v0.12 From a8491158527e257142a4d7c5a7c86385f80a6d9e Mon Sep 17 00:00:00 2001 From: Aleksandar Sasha Babic Date: Tue, 2 Feb 2010 12:00:44 +0100 Subject: Revert "Using RunFast mode for RVCT" until compilation erro fixed. This reverts commit d43178ccaa38b87698e2f5a9fa0f2fb4e5f9f0ad. --- mkspecs/common/symbian/symbian.conf | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/mkspecs/common/symbian/symbian.conf b/mkspecs/common/symbian/symbian.conf index 8760603..b1ef354 100644 --- a/mkspecs/common/symbian/symbian.conf +++ b/mkspecs/common/symbian/symbian.conf @@ -148,19 +148,3 @@ exists($${EPOCROOT}epoc32/release/winscw/udeb/z/system/install/Series60v5.0.sis MMP_RULES -= PAGED } } - -QMAKE_CXXFLAGS_FAST_VFP.ARMCC = --fpmode fast -# [TODO] QMAKE_CXXFLAGS_FAST_VFP.GCCE = - -symbian { - armfpu = $$find(MMP_RULES, "ARMFPU") - !isEmpty(armfpu) { - vfpv2 = $$find(MMP_RULES, "vfpv2") - !isEmpty(vfpv2) { - # we will respect fpu setting obtained from configure, but, - # if vfpv2 or softvfp+vfpv2 used we want to force RunFast VFP mode - QMAKE_CXXFLAGS.ARMCC += $${QMAKE_CXXFLAGS_FAST_VFP.ARMCC} - # [TODO] QMAKE_CXXFLAGS.GCCE += $${QMAKE_CXXFLAGS_FAST_VFP.GCCE} - } - } -} -- cgit v0.12 From 36c0ffcae4f209d6524e943b3edd09c2c5890536 Mon Sep 17 00:00:00 2001 From: Jens Bache-Wiig Date: Tue, 2 Feb 2010 12:12:15 +0100 Subject: Remove PrintDialog frame on Mac On the mac, toplevel windows should not have a frame. This patch simply removes the frame on mac only. Reviewed-by: trond --- src/gui/widgets/qprintpreviewwidget.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/gui/widgets/qprintpreviewwidget.cpp b/src/gui/widgets/qprintpreviewwidget.cpp index 747a227..45b15ef 100644 --- a/src/gui/widgets/qprintpreviewwidget.cpp +++ b/src/gui/widgets/qprintpreviewwidget.cpp @@ -151,7 +151,11 @@ class GraphicsView : public QGraphicsView public: GraphicsView(QWidget* parent = 0) : QGraphicsView(parent) - {} + { +#ifdef Q_WS_MAC + setFrameStyle(QFrame::NoFrame); +#endif + } signals: void resized(); -- cgit v0.12 From 5c8be23e6b5fa732f4c799c783a8b22a85992211 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Tue, 2 Feb 2010 12:13:07 +0100 Subject: Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( 69dd29fbeb12d076741dce70ac6bc155101ccd6f ) Changes in WebKit/qt since the last update: --- src/3rdparty/webkit/VERSION | 2 +- src/3rdparty/webkit/WebCore/ChangeLog | 15 +++++++++++++++ .../webkit/WebCore/platform/qt/RenderThemeQt.cpp | 22 +++++++++++++--------- .../webkit/WebCore/platform/qt/RenderThemeQt.h | 2 +- 4 files changed, 30 insertions(+), 11 deletions(-) diff --git a/src/3rdparty/webkit/VERSION b/src/3rdparty/webkit/VERSION index f627d9e..c304876 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 - a733444d3be6605552471f047558927495ff62b7 + 69dd29fbeb12d076741dce70ac6bc155101ccd6f diff --git a/src/3rdparty/webkit/WebCore/ChangeLog b/src/3rdparty/webkit/WebCore/ChangeLog index bded3d8..18d119a 100644 --- a/src/3rdparty/webkit/WebCore/ChangeLog +++ b/src/3rdparty/webkit/WebCore/ChangeLog @@ -1,3 +1,18 @@ +2010-02-01 Andreas Kling + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Use the fallback style on Maemo 5 + + https://bugs.webkit.org/show_bug.cgi?id=34376 + + * platform/qt/RenderThemeQt.cpp: + (WebCore::RenderThemeQt::RenderThemeQt): + (WebCore::RenderThemeQt::fallbackStyle): + (WebCore::RenderThemeQt::qStyle): + (WebCore::RenderThemeQt::setPaletteFromPageClientIfExists): + * platform/qt/RenderThemeQt.h: + 2010-01-29 Oswald Buddenhagen Reviewed by Simon Hausmann. diff --git a/src/3rdparty/webkit/WebCore/platform/qt/RenderThemeQt.cpp b/src/3rdparty/webkit/WebCore/platform/qt/RenderThemeQt.cpp index 501a28b..6a1eee8 100644 --- a/src/3rdparty/webkit/WebCore/platform/qt/RenderThemeQt.cpp +++ b/src/3rdparty/webkit/WebCore/platform/qt/RenderThemeQt.cpp @@ -125,7 +125,6 @@ PassRefPtr RenderTheme::themeForPage(Page* page) RenderThemeQt::RenderThemeQt(Page* page) : RenderTheme() , m_page(page) - , m_fallbackStyle(0) { QPushButton button; button.setAttribute(Qt::WA_MacSmallSize); @@ -135,6 +134,8 @@ RenderThemeQt::RenderThemeQt(Page* page) #ifdef Q_WS_MAC m_buttonFontPixelSize = fontInfo.pixelSize(); #endif + + m_fallbackStyle = QStyleFactory::create(QLatin1String("windows")); } RenderThemeQt::~RenderThemeQt() @@ -143,19 +144,17 @@ RenderThemeQt::~RenderThemeQt() } // for some widget painting, we need to fallback to Windows style -QStyle* RenderThemeQt::fallbackStyle() +QStyle* RenderThemeQt::fallbackStyle() const { - if (!m_fallbackStyle) - m_fallbackStyle = QStyleFactory::create(QLatin1String("windows")); - - if (!m_fallbackStyle) - m_fallbackStyle = QApplication::style(); - - return m_fallbackStyle; + return (m_fallbackStyle) ? m_fallbackStyle : QApplication::style(); } QStyle* RenderThemeQt::qStyle() const { +#ifdef Q_WS_MAEMO_5 + return fallbackStyle(); +#endif + if (m_page) { ChromeClientQt* client = static_cast(m_page->chrome()->client()); @@ -758,6 +757,10 @@ ControlPart RenderThemeQt::applyTheme(QStyleOption& option, RenderObject* o) con if (result == RadioPart || result == CheckboxPart) option.state |= (isChecked(o) ? QStyle::State_On : QStyle::State_Off); +#ifdef Q_WS_MAEMO_5 + static QPalette lightGrayPalette(Qt::lightGray); + option.palette = lightGrayPalette; +#else // If the owner widget has a custom palette, use it Page* page = o->document()->page(); if (page) { @@ -766,6 +769,7 @@ ControlPart RenderThemeQt::applyTheme(QStyleOption& option, RenderObject* o) con if (pageClient) option.palette = pageClient->palette(); } +#endif return result; } diff --git a/src/3rdparty/webkit/WebCore/platform/qt/RenderThemeQt.h b/src/3rdparty/webkit/WebCore/platform/qt/RenderThemeQt.h index 617c875..19337ac 100644 --- a/src/3rdparty/webkit/WebCore/platform/qt/RenderThemeQt.h +++ b/src/3rdparty/webkit/WebCore/platform/qt/RenderThemeQt.h @@ -138,7 +138,7 @@ private: void setPopupPadding(RenderStyle*) const; QStyle* qStyle() const; - QStyle* fallbackStyle(); + QStyle* fallbackStyle() const; Page* m_page; -- cgit v0.12 From 7ced77b654eb46af1221a55e315795c1be1753a0 Mon Sep 17 00:00:00 2001 From: Jens Bache-Wiig Date: Tue, 2 Feb 2010 12:17:19 +0100 Subject: Fixed potential crash in mac style --- src/gui/styles/qmacstyle_mac.mm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/gui/styles/qmacstyle_mac.mm b/src/gui/styles/qmacstyle_mac.mm index c2e5871..aab16cb 100644 --- a/src/gui/styles/qmacstyle_mac.mm +++ b/src/gui/styles/qmacstyle_mac.mm @@ -2412,9 +2412,11 @@ int QMacStyle::pixelMetric(PixelMetric metric, const QStyleOption *opt, const QW break; case PM_ToolBarFrameWidth: ret = 1; - if (QMainWindow * mainWindow = qobject_cast(widget->parent())) - if (mainWindow->unifiedTitleAndToolBarOnMac()) - ret = 0; + if (widget) { + if (QMainWindow * mainWindow = qobject_cast(widget->parent())) + if (mainWindow->unifiedTitleAndToolBarOnMac()) + ret = 0; + } break; default: ret = QWindowsStyle::pixelMetric(metric, opt, widget); -- cgit v0.12 From 64581bfcb285a2c51e5bb0facd9dc82fb53c6875 Mon Sep 17 00:00:00 2001 From: Iain Date: Tue, 2 Feb 2010 12:10:01 +0000 Subject: Revert "Update default FPU flags on Symbian to be softvfp+vfpv2" RVCT2.2 build 686 crashes when compiling the drawhelpers with VFPv2 enabled. Until compiler workaround found, back out the change. This reverts commit 297e84fcfed524687455d3d94161bf2a32f62d37. Conflicts: configure.exe --- configure.exe | Bin 1178112 -> 1178112 bytes tools/configure/configureapp.cpp | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.exe b/configure.exe index b89999b..21fdcfa 100644 Binary files a/configure.exe and b/configure.exe differ diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 342e47b..8d1b640 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -1482,7 +1482,7 @@ void Configure::applySpecSpecifics() dictionary[ "QT_HOST_PREFIX" ] = dictionary[ "QT_INSTALL_PREFIX" ]; dictionary[ "QT_INSTALL_PREFIX" ] = ""; dictionary[ "QT_INSTALL_PLUGINS" ] = "\\resource\\qt\\plugins"; - dictionary[ "ARM_FPU_TYPE" ] = "softvfp+vfpv2"; + dictionary[ "ARM_FPU_TYPE" ] = "softvfp"; dictionary[ "SQL_SQLITE" ] = "yes"; dictionary[ "SQL_SQLITE_LIB" ] = "system"; -- cgit v0.12 From 3cecf1548ff6f6255bd3d6163758fe7950c0a2f9 Mon Sep 17 00:00:00 2001 From: Jedrzej Nowacki Date: Tue, 2 Feb 2010 14:00:21 +0200 Subject: Introduce of QScriptValue autotest generator. The patch contain the QScriptValue autotest suite generator. Based on an input it can generate expected tests results and simple tests cases. The results are kept inside generated autotest implementation file (cpp), which could be included by main test file (tst_qscriptvalue.cpp). Generator gives great coverage for isXXX, toXXX, comparison methods. The generator should be used manually and it is not compiled by default. Reviewed-by: Kent Hansen --- tests/auto/qscriptvalue/testgen/data.txt | 116 ++++ tests/auto/qscriptvalue/testgen/gen.py | 203 +++++++ tests/auto/qscriptvalue/testgen/main.cpp | 40 ++ tests/auto/qscriptvalue/testgen/testgen.pro | 18 + tests/auto/qscriptvalue/testgen/testgenerator.cpp | 644 ++++++++++++++++++++++ tests/auto/qscriptvalue/testgen/testgenerator.h | 55 ++ 6 files changed, 1076 insertions(+) create mode 100644 tests/auto/qscriptvalue/testgen/data.txt create mode 100755 tests/auto/qscriptvalue/testgen/gen.py create mode 100644 tests/auto/qscriptvalue/testgen/main.cpp create mode 100644 tests/auto/qscriptvalue/testgen/testgen.pro create mode 100644 tests/auto/qscriptvalue/testgen/testgenerator.cpp create mode 100644 tests/auto/qscriptvalue/testgen/testgenerator.h diff --git a/tests/auto/qscriptvalue/testgen/data.txt b/tests/auto/qscriptvalue/testgen/data.txt new file mode 100644 index 0000000..8e7026e --- /dev/null +++ b/tests/auto/qscriptvalue/testgen/data.txt @@ -0,0 +1,116 @@ +# Data set for QScriptValue autotest. + +# Each line is a c++ code that should return a QScriptValue object. +# Lines that are empty or start with '#' will be ignored + +QScriptValue() + +#Unbound values +QScriptValue(QScriptValue::UndefinedValue) +QScriptValue(QScriptValue::NullValue) +QScriptValue(true) +QScriptValue(false) +QScriptValue(int(122)) +QScriptValue(uint(124)) +QScriptValue(0) +QScriptValue(0.0) +QScriptValue(123.0) +QScriptValue(6.37e-8) +QScriptValue(-6.37e-8) +QScriptValue(0x43211234) +QScriptValue(0x10000) +QScriptValue(0x10001) +QScriptValue(qSNaN()) +QScriptValue(qQNaN()) +QScriptValue(qInf()) +QScriptValue(-qInf()) +QScriptValue("NaN") +QScriptValue("Infinity") +QScriptValue("-Infinity") +QScriptValue("ciao") +QScriptValue(QString::fromLatin1("ciao")) +QScriptValue(QString("")) +QScriptValue(QString()) +QScriptValue(QString("0")) +QScriptValue(QString("123")) +QScriptValue(QString("12.4")) + +#Unbound values (bound to a null engine) +QScriptValue(0, QScriptValue::UndefinedValue) +QScriptValue(0, QScriptValue::NullValue) +QScriptValue(0, true) +QScriptValue(0, false) +QScriptValue(0, int(122)) +QScriptValue(0, uint(124)) +QScriptValue(0, 0) +QScriptValue(0, 0.0) +QScriptValue(0, 123.0) +QScriptValue(0, 6.37e-8) +QScriptValue(0, -6.37e-8) +QScriptValue(0, 0x43211234) +QScriptValue(0, 0x10000) +QScriptValue(0, 0x10001) +QScriptValue(0, qSNaN()) +QScriptValue(0, qQNaN()) +QScriptValue(0, qInf()) +QScriptValue(0, -qInf()) +QScriptValue(0, "NaN") +QScriptValue(0, "Infinity") +QScriptValue(0, "-Infinity") +QScriptValue(0, "ciao") +QScriptValue(0, QString::fromLatin1("ciao")) +QScriptValue(0, QString("")) +QScriptValue(0, QString()) +QScriptValue(0, QString("0")) +QScriptValue(0, QString("123")) +QScriptValue(0, QString("12.3")) + +#Bound values +QScriptValue(engine, QScriptValue::UndefinedValue) +QScriptValue(engine, QScriptValue::NullValue) +QScriptValue(engine, true) +QScriptValue(engine, false) +QScriptValue(engine, int(122)) +QScriptValue(engine, uint(124)) +QScriptValue(engine, 0) +QScriptValue(engine, 0.0) +QScriptValue(engine, 123.0) +QScriptValue(engine, 6.37e-8) +QScriptValue(engine, -6.37e-8) +QScriptValue(engine, 0x43211234) +QScriptValue(engine, 0x10000) +QScriptValue(engine, 0x10001) +QScriptValue(engine, qSNaN()) +QScriptValue(engine, qQNaN()) +QScriptValue(engine, qInf()) +QScriptValue(engine, -qInf()) +QScriptValue(engine, "NaN") +QScriptValue(engine, "Infinity") +QScriptValue(engine, "-Infinity") +QScriptValue(engine, "ciao") +QScriptValue(engine, QString::fromLatin1("ciao")) +QScriptValue(engine, QString("")) +QScriptValue(engine, QString()) +QScriptValue(engine, QString("0")) +QScriptValue(engine, QString("123")) +QScriptValue(engine, QString("1.23")) + +# evaluate +engine->evaluate("[]") +engine->evaluate("{}") +engine->evaluate("Object.prototype") +engine->evaluate("Date.prototype") +engine->evaluate("Array.prototype") +engine->evaluate("Function.prototype") +engine->evaluate("Error.prototype") +engine->evaluate("Object") +engine->evaluate("Array") +engine->evaluate("Number") +engine->evaluate("Function") +engine->evaluate("(function() { return 1; })") +engine->evaluate("(function() { return 'ciao'; })") +engine->evaluate("(function() { throw new Error('foo'); })") +engine->evaluate("/foo/") +engine->evaluate("new Object()") +engine->evaluate("new Array()") +engine->evaluate("new Error()") diff --git a/tests/auto/qscriptvalue/testgen/gen.py b/tests/auto/qscriptvalue/testgen/gen.py new file mode 100755 index 0000000..fddb853 --- /dev/null +++ b/tests/auto/qscriptvalue/testgen/gen.py @@ -0,0 +1,203 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +#Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) + +#This library is free software; you can redistribute it and/or +#modify it under the terms of the GNU Library General Public +#License as published by the Free Software Foundation; either +#version 2 of the License, or (at your option) any later version. + +#This library is distributed in the hope that it will be useful, +#but WITHOUT ANY WARRANTY; without even the implied warranty of +#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +#Library General Public License for more details. + +#You should have received a copy of the GNU Library General Public License +#along with this library; see the file COPYING.LIB. If not, write to +#the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +#Boston, MA 02110-1301, USA. + +from __future__ import with_statement +from string import Template + +class Options(): + """Option manager. It parse and check all paramteres, set internal variables.""" + def __init__(self, args): + import logging as log + log.basicConfig() + #comand line options parser + from optparse import OptionParser + #load some directory searching stuff + import os.path, sys + + opt = OptionParser("%prog [options] path_to_input_file path_to_output_file.") + + self._o, self._a = opt.parse_args(args) + + try: + if not (os.path.exists(self._a[0])): + raise Exception("Path doesn't exist") + if len(self._a) != 2: + raise IndexError("Only two files!") + self._o.ipath = self._a[0] + self._o.opath = self._a[1] + except IndexError: + log.error("Bad usage. Please try -h or --help") + sys.exit(1) + except Exception: + log.error("Path '" + self._a[0] + " or " + self._a[1] + "' don't exist") + sys.exit(2) + + def __getattr__(self, attr): + """map all options properties into this object (remove one level of indirection)""" + return getattr(self._o, attr) + + +mainTempl = Template("""/* + Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +//////////////////////////////////////////////////////////////// +// THIS FILE IS AUTOGENERATED, ALL MODIFICATIONS WILL BE LAST // +//////////////////////////////////////////////////////////////// + +#include "testgenerator.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include + + + +typedef bool (QScriptValue::*ComparisionType) (const QScriptValue&) const; +static QVector compare(ComparisionType compare, QScriptValue value, const QScriptValueList& values) { + QVector result; + result.reserve(${count}); + + QScriptValueList::const_iterator i = values.constBegin(); + for (; i != values.constEnd(); ++i) { + result << (value.*compare)(*i); + } + return result; +} + +static void dump(QDataStream& out, QScriptValue& value, const QString& expression, const QScriptValueList& allValues) +{ + out << QString(expression); + + out << value.isValid(); + out << value.isBool(); + out << value.isBoolean(); + out << value.isNumber(); + out << value.isFunction(); + out << value.isNull(); + out << value.isString(); + out << value.isUndefined(); + out << value.isVariant(); + out << value.isQObject(); + out << value.isQMetaObject(); + out << value.isObject(); + out << value.isDate(); + out << value.isRegExp(); + out << value.isArray(); + out << value.isError(); + + out << value.toString(); + out << value.toNumber(); + out << value.toBool(); + out << value.toBoolean(); + out << value.toInteger(); + out << value.toInt32(); + out << value.toUInt32(); + out << value.toUInt16(); + + out << compare(&QScriptValue::equals, value, allValues); + out << compare(&QScriptValue::strictlyEquals, value, allValues); + out << compare(&QScriptValue::lessThan, value, allValues); + out << compare(&QScriptValue::instanceOf, value, allValues); + + out << qscriptvalue_cast(value); + out << qscriptvalue_cast(value); + out << qscriptvalue_cast(value); + out << qscriptvalue_cast(value); + out << qscriptvalue_cast(value); + out << qscriptvalue_cast(value); +} + +void TestGenerator::prepareData() +{ + QScriptEngine* engine = new QScriptEngine; + + QScriptValueList allValues; + allValues << ${values}; + QVector allDataTags; + allDataTags.reserve(${count}); + allDataTags << ${dataTags}; + QDataStream out(&m_tempFile); + out << allDataTags; + + for(unsigned i = 0; i < ${count}; ++i) + dump(out, allValues[i], allDataTags[i], allValues); + + delete engine; +} +""") +qsvTempl = Template(""" + { + QScriptValue value = ${expr}; + dump(out, value, "${expr_esc}", allValues); + }""") + + + +if __name__ == '__main__': + import sys + o = Options(sys.argv[1:]) + out = [] + qsv = [] + # load input file + with open(o.ipath) as f: + for row in f.readlines(): + qsv.append(row) + + #skip comments and empty lines + qsv = filter(lambda w: len(w.strip()) and not w.startswith('#'), qsv) + + escape = lambda w: w.replace('\\','\\\\').replace('"','\\"') + + for row in qsv: + row = row.replace('\n','') + row_esc = escape(row) + out.append(qsvTempl.substitute(expr = row, expr_esc = row_esc)) + + result = mainTempl.substitute(dump= "".join(out) \ + , values = (11 * ' ' + '<< ').join(qsv) \ + , count = len(qsv) \ + , dataTags = (11 * ' ' + '<< ').join(map(lambda w: '"' + escape(w.replace('\n','')) + '"\n', qsv))) + + with open(o.opath, 'w') as f: + f.write(result) + + diff --git a/tests/auto/qscriptvalue/testgen/main.cpp b/tests/auto/qscriptvalue/testgen/main.cpp new file mode 100644 index 0000000..389a725 --- /dev/null +++ b/tests/auto/qscriptvalue/testgen/main.cpp @@ -0,0 +1,40 @@ +/* + Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "testgenerator.h" +#include +#include +#include +#include + +int main(int argc, char *argv[]) +{ + QCoreApplication a(argc, argv); + + if (argc != 2) { + qWarning() << "./prog outputfile"; + exit(1); + } + + //Procced + TestGenerator gen(a.arguments()[1]); + gen.run(); + + return 0; +} diff --git a/tests/auto/qscriptvalue/testgen/testgen.pro b/tests/auto/qscriptvalue/testgen/testgen.pro new file mode 100644 index 0000000..47709a8 --- /dev/null +++ b/tests/auto/qscriptvalue/testgen/testgen.pro @@ -0,0 +1,18 @@ +QT += core script +TARGET = testgen +CONFIG += console +CONFIG -= app_bundle +TEMPLATE = app + +SOURCES += main.cpp \ + testgenerator.cpp +HEADERS += testgenerator.h + + +INPUT_DATASET = data.txt +dataset.name = Generating QScraiptValue autotest's dataset +dataset.output = autogenerated.cpp +dataset.commands = python gen.py data.txt autogenerated.cpp +dataset.input = INPUT_DATASET +dataset.variable_out = SOURCES +QMAKE_EXTRA_COMPILERS += dataset diff --git a/tests/auto/qscriptvalue/testgen/testgenerator.cpp b/tests/auto/qscriptvalue/testgen/testgenerator.cpp new file mode 100644 index 0000000..199e84b --- /dev/null +++ b/tests/auto/qscriptvalue/testgen/testgenerator.cpp @@ -0,0 +1,644 @@ +/* + Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "testgenerator.h" + +#include +#include +#include +#include +#include +#include +#include +#include + +void TestGenerator::save(const QString& data) +{ + QTextStream out(&m_ofile); + out << data; +} + +static QString escape(QString txt) +{ + return txt.replace("\\","\\\\").replace("\"","\\\"").replace("\n","\\n"); +} + +template +QString prepareToInsert(T value) {return QString::fromAscii("\"") + escape(value) + "\"";} +template<> +QString prepareToInsert(qsreal value) +{ + if (qIsNaN(value)) + return "qQNaN()"; + if (qIsInf(value)) + return "qInf()"; + return QString::number(value, 'g', 16); +} +template<> +QString prepareToInsert(qint32 value) {return QString::number(value);} +template<> +QString prepareToInsert(quint32 value) {return QString::number(value);} +template<> +QString prepareToInsert(quint16 value) {return QString::number(value);} +template<> +QString prepareToInsert(bool value) {return value ? "true" : "false";} +template<> +QString prepareToInsert(QString value) {return QString::fromAscii("\"") + escape(value) + "\"";} + +template +QString typeName() {return QString();} +template<> +QString typeName() {return "qsreal";} +template<> +QString typeName() {return "qint32";} +template<> +QString typeName() {return "quint32";} +template<> +QString typeName() {return "quint16";} +template<> +QString typeName() {return "bool";} +template<> +QString typeName() {return "QString";} + +static QString generateIsXXXDef(const QString& name, const QList& list) +{ + static const QString templ("void tst_QScriptValue::%1_initData()\n"\ + "{\n"\ + " QTest::addColumn(\"expected\");\n"\ + " initScriptValues();\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::%1_makeData(const char* expr)\n"\ + "{\n"\ + " static QSet %1;\n"\ + " if (%1.isEmpty()) {\n"\ + " %1%2\n"\ + " }\n"\ + " newRow(expr) << %1.contains(expr);\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::%1_test(const char*, const QScriptValue& value)\n"\ + "{\n"\ + " QFETCH(bool, expected);\n"\ + " QCOMPARE(value.%1(), expected);\n"\ + "}\n"\ + "\n"\ + "DEFINE_TEST_FUNCTION(%1)\n"\ + "\n"); + + if (!list.size()) { + qWarning() << name << ": nothing to add!" ; + return QString(); + } + + QString result = templ; + QStringList set; + foreach(QString t, list) { + t = escape(t); + t.append('\"'); + t.prepend('\"'); + set.append(QString(" << ")); + set.append(t); + set.append("\n "); + } + set.append(";"); + return result.arg(name, set.join(QString())); +} + +template +static QString generateToXXXDef(const QString& name, const QList >& list) +{ + static const QString templ = "\n"\ + "void tst_QScriptValue::%1_initData()\n"\ + "{\n"\ + " QTest::addColumn<%2>(\"expected\");\n"\ + " initScriptValues();\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::%1_makeData(const char* expr)\n"\ + "{\n"\ + " static QHash %1;\n"\ + " if (%1.isEmpty()) {\n"\ + "%3"\ + " }\n"\ + " newRow(expr) << %1.value(expr);\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::%1_test(const char*, const QScriptValue& value)\n"\ + "{\n"\ + " QFETCH(%2, expected);\n"\ + " QCOMPARE(value.%1(), expected);\n"\ + "}\n"\ + "\n"\ + "DEFINE_TEST_FUNCTION(%1)\n"; + QString result = templ; + + typename QList >::const_iterator i = list.constBegin(); + QStringList set; + for(; i != list.constEnd(); ++i) { + QPair t = *i; + t.first = escape(t.first); + set.append(QString(" ")); + set.append(name); + set.append(".insert(\""); + set.append(t.first); + set.append(QString::fromAscii("\", ")); + set.append(prepareToInsert(t.second)); + set.append(QString::fromAscii(");\n")); + } + return result.arg(name, typeName(), set.join(QString())); +} + + +template<> +QString generateToXXXDef(const QString& name, const QList >& list) +{ + static const QString templ = "\n"\ + "void tst_QScriptValue::%1_initData()\n"\ + "{\n"\ + " QTest::addColumn<%2>(\"expected\");\n"\ + " initScriptValues();\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::%1_makeData(const char* expr)\n"\ + "{\n"\ + " static QHash %1;\n"\ + " if (%1.isEmpty()) {\n"\ + "%3"\ + " }\n"\ + " newRow(expr) << %1.value(expr);\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::%1_test(const char*, const QScriptValue& value)\n"\ + "{\n"\ + " QFETCH(%2, expected);\n"\ + "%666" + " if (qIsInf(expected)) {\n"\ + " QVERIFY(qIsInf(value.%1()));\n"\ + " return;\n"\ + " }\n"\ + " QCOMPARE(value.%1(), expected);\n"\ + "}\n"\ + "\n"\ + "DEFINE_TEST_FUNCTION(%1)\n"; + QString result = templ; + + QList >::const_iterator i = list.constBegin(); + QStringList set; + for(; i != list.constEnd(); ++i) { + QPair t = *i; + t.first = escape(t.first); + set.append(QString(" ")); + set.append(name); + set.append(".insert(\""); + set.append(t.first); + set.append(QString::fromAscii("\", ")); + set.append(prepareToInsert(t.second)); + set.append(QString::fromAscii(");\n")); + } + // toInteger shouldn't return NaN, so it would be nice to catch the case. + QString hook; + if (name == "toNumber") { + hook = + " if (qIsNaN(expected)) {\n"\ + " QVERIFY(qIsNaN(value.toNumber()));\n"\ + " return;\n"\ + " }\n"; + } + return result.arg(name, typeName(), set.join(QString()), hook); +} + +template +static QString generateCastDef(const QList >& list) +{ + static const QString templ = "\n"\ + "void tst_QScriptValue::qscriptvalue_cast%2_initData()\n"\ + "{\n"\ + " QTest::addColumn<%2>(\"expected\");\n"\ + " initScriptValues();\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::qscriptvalue_cast%2_makeData(const char* expr)\n"\ + "{\n"\ + " static QHash value;\n"\ + " if (value.isEmpty()) {\n"\ + "%3"\ + " }\n"\ + " newRow(expr) << value.value(expr);\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::qscriptvalue_cast%2_test(const char*, const QScriptValue& value)\n"\ + "{\n"\ + " QFETCH(%2, expected);\n"\ + " QCOMPARE(qscriptvalue_cast<%2>(value), expected);\n"\ + "}\n"\ + "\n"\ + "DEFINE_TEST_FUNCTION(qscriptvalue_cast%2)\n"; + QString result = templ; + + typename QList >::const_iterator i = list.constBegin(); + QStringList set; + for(; i != list.constEnd(); ++i) { + QPair t = *i; + t.first = escape(t.first); + set.append(QString(" ")); + set.append("value.insert(\""); + set.append(t.first); + set.append(QString::fromAscii("\", ")); + set.append(prepareToInsert(t.second)); + set.append(QString::fromAscii(");\n")); + } + return result.arg(typeName(), set.join(QString())); +} + +template<> +QString generateCastDef(const QList >& list) +{ + static const QString templ = "\n"\ + "void tst_QScriptValue::qscriptvalue_cast%2_initData()\n"\ + "{\n"\ + " QTest::addColumn<%2>(\"expected\");\n"\ + " initScriptValues();\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::qscriptvalue_cast%2_makeData(const char* expr)\n"\ + "{\n"\ + " static QHash value;\n"\ + " if (value.isEmpty()) {\n"\ + "%3"\ + " }\n"\ + " newRow(expr) << value.value(expr);\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::qscriptvalue_cast%2_test(const char*, const QScriptValue& value)\n"\ + "{\n"\ + " QFETCH(%2, expected);\n"\ + " if (qIsNaN(expected)) {\n" + " QVERIFY(qIsNaN(qscriptvalue_cast<%2>(value)));\n" + " return;\n" + " }\n"\ + " if (qIsInf(expected)) {\n" + " QVERIFY(qIsInf(qscriptvalue_cast<%2>(value)));\n" + " return;\n" + " }\n" + " QCOMPARE(qscriptvalue_cast<%2>(value), expected);\n"\ + "}\n"\ + "\n"\ + "DEFINE_TEST_FUNCTION(qscriptvalue_cast%2)\n"; + QString result = templ; + + QList >::const_iterator i = list.constBegin(); + QStringList set; + for(; i != list.constEnd(); ++i) { + QPair t = *i; + t.first = escape(t.first); + set.append(QString(" ")); + set.append("value.insert(\""); + set.append(t.first); + set.append(QString::fromAscii("\", ")); + set.append(prepareToInsert(t.second)); + set.append(QString::fromAscii(");\n")); + } + return result.arg(typeName(), set.join(QString())); +} + +static QString generateCompareDef(const QString& comparisionType, const QList tags) +{ + static const QString templ = "\n"\ + "void tst_QScriptValue::%1_initData()\n"\ + "{\n"\ + " QTest::addColumn(\"other\");\n"\ + " QTest::addColumn(\"expected\");\n"\ + " initScriptValues();\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::%1_makeData(const char *expr)\n"\ + "{\n"\ + " static QSet equals;\n"\ + " if (equals.isEmpty()) {\n"\ + "%2\n"\ + " }\n"\ + " QHash::const_iterator it;\n"\ + " for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) {\n"\ + " QString tag = QString::fromLatin1(\"%20 <=> %21\").arg(expr).arg(it.key());\n"\ + " newRow(tag.toLatin1()) << it.value() << equals.contains(tag);\n"\ + " }\n"\ + "}\n"\ + "\n"\ + "void tst_QScriptValue::%1_test(const char *, const QScriptValue& value)\n"\ + "{\n"\ + " QFETCH(QScriptValue, other);\n"\ + " QFETCH(bool, expected);\n"\ + " QCOMPARE(value.%1(other), expected);\n"\ + "}\n"\ + "\n"\ + "DEFINE_TEST_FUNCTION(%1)\n"; + Q_ASSERT(comparisionType == "strictlyEquals" + || comparisionType == "equals" + || comparisionType == "lessThan" + || comparisionType == "instanceOf"); + QString result = templ; + + QStringList set; + foreach(const QString& tmp, tags) { + set.append(" equals.insert(\"" + escape(tmp) + "\");"); + } + return result.arg(comparisionType, set.join("\n")); +} + +static QString generateInitDef(const QVector& allDataTags) +{ + static const QString templ = "/*\n"\ + " Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)\n"\ + "\n"\ + " This library is free software; you can redistribute it and/or\n"\ + " modify it under the terms of the GNU Library General Public\n"\ + " License as published by the Free Software Foundation; either\n"\ + " version 2 of the License, or (at your option) any later version.\n"\ + "\n"\ + " This library is distributed in the hope that it will be useful,\n"\ + " but WITHOUT ANY WARRANTY; without even the implied warranty of\n"\ + " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n"\ + " Library General Public License for more details.\n"\ + "\n"\ + " You should have received a copy of the GNU Library General Public License\n"\ + " along with this library; see the file COPYING.LIB. If not, write to\n"\ + " the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,\n"\ + " Boston, MA 02110-1301, USA.\n"\ + "*/\n"\ + "\n"\ + "#include \"tst_qscriptvalue.h\"\n\n"\ + "#define DEFINE_TEST_VALUE(expr) m_values.insert(QString::fromLatin1(#expr), expr)\n"\ + "\n"\ + "void tst_QScriptValue::initScriptValues()\n"\ + "{\n"\ + " m_values.clear();\n"\ + " if (engine) \n"\ + " delete engine;\n"\ + " engine = new QScriptEngine;\n"\ + "%1\n}\n\n"; + QString result = templ; + QStringList set; + foreach(const QString tag, allDataTags) { + set.append(" DEFINE_TEST_VALUE(" + tag + ");"); + } + + return result.arg(set.join("\n")); +} + +static void squashTags(QString dataTag, const QVector& results, QList& tags, QVector dataTags) +{ + for(int i = 0; i < results.count(); ++i) { + if (results.at(i)) + tags.append(dataTag + " <=> " + dataTags[i]); + } +} + + +QString TestGenerator::generateTest() +{ + // All data tags keept in one place. + QVector dataTags; + + // Data tags for values that return true in isXXX call + QList isValidList; + QList isBoolList; + QList isBooleanList; + QList isNumberList; + QList isFunctionList; + QList isNullList; + QList isStringList; + QList isUndefinedList; + QList isVariantList; + QList isQObjectList; + QList isQMetaObjectList; + QList isObjectList; + QList isDateList; + QList isRegExpList; + QList isArrayList; + QList isErrorList; + + // List of pairs data tag and value returned from toXXX call + QList > toStringList; + QList > toNumberList; + QList > toBoolList; + QList > toBooleanList; + QList > toIntegerList; + QList > toInt32List; + QList > toUInt32List; + QList > toUInt16List; + + // List of complex tags returning true + QList equalsList; + QList strictlyEqualsList; + QList lessThanList; + QList instanceOfList; + + QList > castStringList; + QList > castSRealList; + QList > castBoolList; + QList > castInt32List; + QList > castUInt32List; + QList > castUInt16List; + + // Load. + m_tempFile.seek(0); + QDataStream in(&m_tempFile); + in >> dataTags; + Q_ASSERT(in.status() == in.Ok); + + while(!in.atEnd()) + { + bool isValidRes; + bool isBoolRes; + bool isBooleanRes; + bool isNumberRes; + bool isFunctionRes; + bool isNullRes; + bool isStringRes; + bool isUndefinedRes; + bool isVariantRes; + bool isQObjectRes; + bool isQMetaObjectRes; + bool isObjectRes; + bool isDateRes; + bool isRegExpRes; + bool isArrayRes; + bool isErrorRes; + + QString toStringRes; + qsreal toNumberRes; + bool toBoolRes; + bool toBooleanRes; + qsreal toIntegerRes; + qint32 toInt32Res; + quint32 toUInt32Res; + quint16 toUInt16Res; + //toVariantRes; + //toDateTimeRes; + + QVector equalsRes; + QVector strictlyEqualsRes; + QVector lessThanRes; + QVector instanceOfRes; + + QString castStringRes; + qsreal castSRealRes; + bool castBoolRes; + qint32 castInt32Res; + quint32 castUInt32Res; + quint16 castUInt16Res; + + QString dataTag; + in >> dataTag; + in >> isValidRes; + in >> isBoolRes; + in >> isBooleanRes; + in >> isNumberRes; + in >> isFunctionRes; + in >> isNullRes; + in >> isStringRes; + in >> isUndefinedRes; + in >> isVariantRes; + in >> isQObjectRes; + in >> isQMetaObjectRes; + in >> isObjectRes; + in >> isDateRes; + in >> isRegExpRes; + in >> isArrayRes; + in >> isErrorRes; + + if (isValidRes) isValidList.append(dataTag); + if (isBoolRes) isBoolList.append(dataTag); + if (isBooleanRes) isBooleanList.append(dataTag); + if (isNumberRes) isNumberList.append(dataTag); + if (isFunctionRes) isFunctionList.append(dataTag); + if (isNullRes) isNullList.append(dataTag); + if (isStringRes) isStringList.append(dataTag); + if (isUndefinedRes) isUndefinedList.append(dataTag); + if (isVariantRes) isVariantList.append(dataTag); + if (isQObjectRes) isQObjectList.append(dataTag); + if (isQMetaObjectRes) isQMetaObjectList.append(dataTag); + if (isObjectRes) isObjectList.append(dataTag); + if (isDateRes) isDateList.append(dataTag); + if (isRegExpRes) isRegExpList.append(dataTag); + if (isArrayRes) isArrayList.append(dataTag); + if (isErrorRes) isErrorList.append(dataTag); + + in >> toStringRes; + in >> toNumberRes; + in >> toBoolRes; + in >> toBooleanRes; + in >> toIntegerRes; + in >> toInt32Res; + in >> toUInt32Res; + in >> toUInt16Res; + //in >> toVariantRes; + //in >> toDateTimeRes; + + toStringList.append(QPair(dataTag, toStringRes)); + toNumberList.append(QPair(dataTag, toNumberRes)); + toBoolList.append(QPair(dataTag, toBoolRes)); + toBooleanList.append(QPair(dataTag, toBooleanRes)); + toIntegerList.append(QPair(dataTag, toIntegerRes)); + toInt32List.append(QPair(dataTag, toInt32Res)); + toUInt32List.append(QPair(dataTag, toUInt32Res)); + toUInt16List.append(QPair(dataTag, toUInt16Res)); + + in >> equalsRes; + in >> strictlyEqualsRes; + in >> lessThanRes; + in >> instanceOfRes; + + squashTags(dataTag, equalsRes, equalsList, dataTags); + squashTags(dataTag, strictlyEqualsRes, strictlyEqualsList, dataTags); + squashTags(dataTag, lessThanRes, lessThanList, dataTags); + squashTags(dataTag, instanceOfRes, instanceOfList, dataTags); + + in >> castStringRes; + in >> castSRealRes; + in >> castBoolRes; + in >> castInt32Res; + in >> castUInt32Res; + in >> castUInt16Res; + + castStringList.append(QPair(dataTag, castStringRes)); + castSRealList.append(QPair(dataTag, castSRealRes)); + castBoolList.append(QPair(dataTag, castBoolRes)); + castInt32List.append(QPair(dataTag, castInt32Res)); + castUInt32List.append(QPair(dataTag, castUInt32Res)); + castUInt16List.append(QPair(dataTag, castUInt16Res)); + + Q_ASSERT(in.status() == in.Ok); + } + + Q_ASSERT(in.atEnd()); + + // Generate. + QStringList result; + result.append(generateInitDef(dataTags)); + result.append(generateIsXXXDef("isValid", isValidList)); + result.append(generateIsXXXDef("isBool", isBoolList)); + result.append(generateIsXXXDef("isBoolean", isBooleanList)); + result.append(generateIsXXXDef("isNumber", isNumberList)); + result.append(generateIsXXXDef("isFunction", isFunctionList)); + result.append(generateIsXXXDef("isNull", isNullList)); + result.append(generateIsXXXDef("isString", isStringList)); + result.append(generateIsXXXDef("isUndefined", isUndefinedList)); + result.append(generateIsXXXDef("isVariant", isVariantList)); + result.append(generateIsXXXDef("isQObject", isQObjectList)); + result.append(generateIsXXXDef("isQMetaObject", isQMetaObjectList)); + result.append(generateIsXXXDef("isObject", isObjectList)); + result.append(generateIsXXXDef("isDate", isDateList)); + result.append(generateIsXXXDef("isRegExp", isRegExpList)); + result.append(generateIsXXXDef("isArray", isArrayList)); + result.append(generateIsXXXDef("isError", isErrorList)); + + result.append(generateToXXXDef("toString", toStringList)); + result.append(generateToXXXDef("toNumber", toNumberList)); + result.append(generateToXXXDef("toBool", toBoolList)); + result.append(generateToXXXDef("toBoolean", toBooleanList)); + result.append(generateToXXXDef("toInteger", toIntegerList)); + result.append(generateToXXXDef("toInt32", toInt32List)); + result.append(generateToXXXDef("toUInt32", toUInt32List)); + result.append(generateToXXXDef("toUInt16", toUInt16List)); + + result.append(generateCompareDef("equals", equalsList)); + result.append(generateCompareDef("strictlyEquals", strictlyEqualsList)); + result.append(generateCompareDef("lessThan", lessThanList)); + result.append(generateCompareDef("instanceOf", instanceOfList)); + + result.append(generateCastDef(castStringList)); + result.append(generateCastDef(castSRealList)); + result.append(generateCastDef(castBoolList)); + result.append(generateCastDef(castInt32List)); + result.append(generateCastDef(castUInt32List)); + result.append(generateCastDef(castUInt16List)); + + return result.join("\n"); +} + + + + + + + + + diff --git a/tests/auto/qscriptvalue/testgen/testgenerator.h b/tests/auto/qscriptvalue/testgen/testgenerator.h new file mode 100644 index 0000000..d3a2196 --- /dev/null +++ b/tests/auto/qscriptvalue/testgen/testgenerator.h @@ -0,0 +1,55 @@ +/* + Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#ifndef TESTGENERATOR_H +#define TESTGENERATOR_H + +#include +#include +#include + +class TestGenerator { +public: + TestGenerator(QString& outputpath) + : m_ofile(outputpath) + { + // Open output file + if (!m_ofile.open(QIODevice::WriteOnly | QIODevice::Text)) { + qWarning() << "Can't open output file: " << outputpath; + exit(2); + } + m_tempFile.open(); + } + + void run() + { + prepareData(); + Q_ASSERT(m_tempFile.size()); + save(generateTest()); + } + + void prepareData(); + QString generateTest(); + void save(const QString& data); +private: + QFile m_ofile; + QTemporaryFile m_tempFile; +}; + +#endif // TESTGENERATOR_H -- cgit v0.12 From 7f31c6969ff27320b088e214b0ae6bf1ae36ecc3 Mon Sep 17 00:00:00 2001 From: Pavel Fric Date: Tue, 2 Feb 2010 14:42:06 +0100 Subject: Added Czech translations. Merge-request: 440 Reviewed-by: Oswald Buddenhagen --- tools/assistant/translations/qt_help.pro | 1 + tools/assistant/translations/translations.pro | 1 + tools/designer/translations/translations.pro | 1 + tools/linguist/linguist/linguist.pro | 1 + translations/assistant_cs.ts | 1074 +++ translations/designer_cs.ts | 7051 ++++++++++++++++ translations/linguist_cs.ts | 2023 +++++ translations/qt_cs.ts | 10362 ++++++++++++++++++++++++ translations/qt_help_cs.ts | 395 + translations/translations.pri | 2 +- 10 files changed, 20910 insertions(+), 1 deletion(-) create mode 100644 translations/assistant_cs.ts create mode 100644 translations/designer_cs.ts create mode 100644 translations/linguist_cs.ts create mode 100644 translations/qt_cs.ts create mode 100644 translations/qt_help_cs.ts diff --git a/tools/assistant/translations/qt_help.pro b/tools/assistant/translations/qt_help.pro index db54ae6..1012f3f 100644 --- a/tools/assistant/translations/qt_help.pro +++ b/tools/assistant/translations/qt_help.pro @@ -41,6 +41,7 @@ HEADERS += ../lib/qhelpcollectionhandler_p.h \ TR_DIR = $$PWD/../../../translations TRANSLATIONS = \ + $$TR_DIR/qt_help_cs.ts \ $$TR_DIR/qt_help_da.ts \ $$TR_DIR/qt_help_de.ts \ $$TR_DIR/qt_help_ja.ts \ diff --git a/tools/assistant/translations/translations.pro b/tools/assistant/translations/translations.pro index 95501ab..d29ffc3 100644 --- a/tools/assistant/translations/translations.pro +++ b/tools/assistant/translations/translations.pro @@ -42,6 +42,7 @@ HEADERS += ../tools/assistant/aboutdialog.h \ TR_DIR = $$PWD/../../../translations TRANSLATIONS = \ + $$TR_DIR/assistant_cs.ts \ $$TR_DIR/assistant_da.ts \ $$TR_DIR/assistant_de.ts \ $$TR_DIR/assistant_fr.ts \ diff --git a/tools/designer/translations/translations.pro b/tools/designer/translations/translations.pro index 03c1415..a1b99fd 100644 --- a/tools/designer/translations/translations.pro +++ b/tools/designer/translations/translations.pro @@ -129,6 +129,7 @@ HEADERS += ../../shared/findwidget/abstractfindwidget.h \ TR_DIR = $$PWD/../../../translations TRANSLATIONS = \ + $$TR_DIR/designer_cs.ts \ $$TR_DIR/designer_de.ts \ $$TR_DIR/designer_fr.ts \ $$TR_DIR/designer_ja.ts \ diff --git a/tools/linguist/linguist/linguist.pro b/tools/linguist/linguist/linguist.pro index c902aeb..693bc71 100644 --- a/tools/linguist/linguist/linguist.pro +++ b/tools/linguist/linguist/linguist.pro @@ -97,6 +97,7 @@ RESOURCES += linguist.qrc TR_DIR = $$PWD/../../../translations TRANSLATIONS = \ + $$TR_DIR/linguist_cs.ts \ $$TR_DIR/linguist_de.ts \ $$TR_DIR/linguist_fr.ts \ $$TR_DIR/linguist_ja.ts \ diff --git a/translations/assistant_cs.ts b/translations/assistant_cs.ts new file mode 100644 index 0000000..2156187 --- /dev/null +++ b/translations/assistant_cs.ts @@ -0,0 +1,1074 @@ + + + + + AboutDialog + + + &Close + &Zavřít + + + + AboutLabel + + + Warning + Varování + + + + Unable to launch external application. + + Chyba při spouštění vnější aplikace. + + + + + OK + OK + + + + BookmarkDialog + + + Add Bookmark + Přidat záložku + + + + Bookmark: + Záložka: + + + + Add in Folder: + Zřídit ve složce: + + + + New Folder + Nová složka + + + + + + + + Bookmarks + Záložky + + + + + + + + + + + Delete Folder + Smazat složku + + + + Rename Folder + Přejmenovat složku + + + + BookmarkManager + + + Bookmarks + Záložky + + + + Remove + Odstranit + + + + You are going to delete a Folder, this will also<br>remove it's content. Are you sure to continue? + Když smažete tuto složku, bude smazán i <br>celý její obsah. Opravdu chcete pokračovat? + + + + + New Folder + Nová složka + + + + BookmarkWidget + + + Filter: + Filtr: + + + + Remove + Odstranit + + + + Delete Folder + Smazat složku + + + + Rename Folder + Přejmenovat složku + + + + Show Bookmark + Ukázat záložku + + + + Show Bookmark in New Tab + Ukázat záložku v nové kartě + + + + Delete Bookmark + Smazat záložku + + + + Rename Bookmark + Přejmenovat záložku + + + + Add + Přidat + + + + CentralWidget + + + Add new page + Přidat novou stranu + + + + Close current page + Zavřít současnou stranu + + + + Print Document + Vytisknout dokument + + + + + unknown + Neznámý + + + + Add New Page + Přidat novou stranu + + + + Close This Page + Zavřít tuto stranu + + + + Close Other Pages + Zavřít jiné strany + + + + Add Bookmark for this Page... + Přidat záložku pro tuto stranu... + + + + Search + Hledat + + + + ContentWindow + + + Open Link + Otevřít adresu odkazu + + + + Open Link in New Tab + Otevřít odkaz v nové kartě + + + + FilterNameDialogClass + + + Add Filter Name + Přidat název filtru + + + + Filter Name: + Název filtru: + + + + FindWidget + + + Previous + Předchozí + + + + Next + Další + + + + Case Sensitive + Rozlišující velká a malá písmena + + + + Whole words + Celá slova + + + + <img src=":/trolltech/assistant/images/wrap.png">&nbsp;Search wrapped + <img src=":/trolltech/assistant/images/wrap.png">&nbsp;Konec strany + + + + FontPanel + + + Font + Písmo + + + + &Writing system + Způsob &psaní + + + + &Family + &Písmová rodina + + + + &Style + &Styl + + + + &Point size + &Bodová velikost + + + + HelpViewer + + + Help + Nápověda + + + + OK + OK + + + + <title>Error 404...</title><div align="center"><br><br><h1>The page could not be found</h1><br><h3>'%1'</h3></div> + <title>Chyba 404 ...</title><div align="center"><br><br><h1>Stranu se nepodařilo najít.</h1><br><h3>'%1'</h3></div> + + + + Copy &Link Location + &Kopírovat adresu odkazu + + + + Open Link in New Tab Ctrl+LMB + Otevřít odkaz v nové kartě Ctrl+LMB + + + + Open Link in New Tab + Otevřít odkaz v nové kartě + + + + Unable to launch external application. + + Chyba při spouštění vnější aplikace. + + + + + IndexWindow + + + &Look for: + &Hledat: + + + + Open Link + Otevřít adresu odkazu + + + + Open Link in New Tab + Otevřít odkaz v nové kartě + + + + InstallDialog + + + + Install Documentation + Nainstalovat dokumentaci + + + + Downloading documentation info... + Stahuje se informace o dokumentaci... + + + + Download canceled. + Stahování bylo zrušeno. + + + + + + Done. + Hotovo. + + + + The file %1 already exists. Do you want to overwrite it? + Soubor %1 již existuje. Chcete jej přepsat? + + + + Unable to save the file %1: %2. + Soubor %1 nelze uložit: %2. + + + + Downloading %1... + Stahuje se %1... + + + + + + Download failed: %1. + Stažení se nezdařilo: %1. + + + + Documentation info file is corrupt! + Soubor s informací o dokumentaci je poškozen! + + + + Download failed: Downloaded file is corrupted. + Stažení se nezdařilo: Stažený soubor je pravděpodobně poškozen. + + + + Installing documentation %1... + Instaluje dokumentace %1... + + + + Error while installing documentation: +%1 + Chyba při instalaci dokumentace: +%1 + + + + Available Documentation: + Dostupná dokumentace: + + + + Install + Instalovat + + + + Cancel + Zrušit + + + + Close + Zavřít + + + + Installation Path: + Cesta pro instalaci: + + + + ... + ... + + + + MainWindow + + + + Index + Rejstřík + + + + + Contents + Obsah + + + + + Bookmarks + Záložky + + + + Search + Hledat + + + + + + Qt Assistant + Qt Assistant + + + + + Unfiltered + Bez filtru + + + + Page Set&up... + &Nastavení strany... + + + + Print Preview... + Náhled tisku... + + + + &Print... + &Tisk... + + + + New &Tab + Nová &karta + + + + &Close Tab + &Zavřít kartu + + + + &Quit + &Ukončit + + + + &Copy selected Text + &Kopírovat vybraný text + + + + &Find in Text... + &Najít v textu... + + + + Find &Next + Hledat &dál + + + + Find &Previous + Najít &předchozí + + + + Preferences... + Nastavení... + + + + Zoom &in + &Zvětšit + + + + Zoom &out + &Zmenšit + + + + Normal &Size + Obvyklá &velikost + + + + Ctrl+0 + Ctrl+0 + + + + ALT+C + ALT+C + + + + ALT+I + ALT+I + + + + ALT+S + ALT+S + + + + &Home + &Začáteční strana + + + + &Back + &Zpět + + + + &Forward + &Dopředu + + + + Sync with Table of Contents + Seřídit stranu s kartou obsahu + + + + Next Page + Další strana + + + + Ctrl+Alt+Right + Ctrl+Alt+Right + + + + Previous Page + Předchozí strana + + + + Ctrl+Alt+Left + Ctrl+Alt+Left + + + + Add Bookmark... + Přidat záložku... + + + + About... + O... + + + + Navigation Toolbar + Navigační pruh + + + + Toolbars + Nástrojové pruhy + + + + Filter Toolbar + Filtrovací pruh + + + + Filtered by: + Filtr: + + + + Address Toolbar + Adresní pruh + + + + Address: + Adresa: + + + + Could not find the associated content item. + Nepodařilo se najít příslušnou položku obsahu. + + + + About %1 + O %1 + + + + Updating search index + Sestavuje se rejstřík hledání + + + + Looking for Qt Documentation... + Hledá se dokumentace ke Qt... + + + + &Window + &Okno + + + + Minimize + Zmenšit + + + + Ctrl+M + Ctrl+M + + + + Zoom + Zvětšení + + + + &File + &Soubor + + + + &Edit + &Úpravy + + + + &View + &Pohled + + + + &Go + &Jít na + + + + ALT+Home + ALT+Home + + + + &Bookmarks + &Záložky + + + + &Help + &Nápověda + + + + ALT+O + ALT+O + + + + CTRL+D + CTRL+D + + + + PreferencesDialog + + + + Add Documentation + Přidat dokumentaci + + + + Qt Compressed Help Files (*.qch) + Stlačené soubory s nápovědoun (*.qch) + + + + The specified file is not a valid Qt Help File! + Zadaný soubor není platným souborem nápovědy ke Qt. + + + + The namespace %1 is already registered! + Jmenný prostor %1 je již zaznamenám! + + + + Remove Documentation + Odstranit dokumentaci + + + + Some documents currently opened in Assistant reference the documentation you are attempting to remove. Removing the documentation will close those documents. + Některé v současnosti otevřené dokumenty pocházejí z dokumentace, kterou se právě pokoušíte odstranit. Při odstraňování budou zavřeny. + + + + Cancel + Zrušit + + + + OK + OK + + + + Use custom settings + Použít nastavení stanovená uživatelem + + + + PreferencesDialogClass + + + Preferences + Nastavení + + + + Fonts + Písma + + + + Font settings: + Nastavení písem: + + + + Browser + Prohlížeč + + + + Application + Program + + + + Filters + Filtr + + + + Filter: + Filtr: + + + + Attributes: + Vlastnosti: + + + + 1 + 1 + + + + Add + Přidat + + + + Remove + Odstranit + + + + Documentation + Dokumentace + + + + Registered Documentation: + Zaznamenaná dokumentace: + + + + Add... + Přidat... + + + + Options + Volby + + + + Current Page + Nynější strana + + + + Restore to default + Obnovit výchozí nastavení + + + + Homepage + Začáteční stránka + + + + On help start: + Na začátek nápovědy: + + + + Show my home page + Ukázat moji domovskou stránku + + + + Show a blank page + Ukázat prázdnou stránku + + + + Show my tabs from last session + Ukázat mé karty z posledního sezení + + + + Blank Page + Prázdná strana + + + + QObject + + + The specified collection file does not exist! + Zadaný sbírkový soubor nelze najít! + + + + Missing collection file! + Chybějící sbírkový soubor! + + + + Invalid URL! + Neplatné URL! + + + + Missing URL! + Chybějící URL! + + + + + + Unknown widget: %1 + Neznámý prvek: %1 + + + + + + Missing widget! + Chybějící prvek! + + + + + The specified Qt help file does not exist! + Zadaný soubor s nápovědou ke Qt nelze najít! + + + + + Missing help file! + Chybějící soubor s nápovědou! + + + + Missing filter argument! + Chybějící argument pro filtr! + + + + Unknown option: %1 + Neznámá volba: %1 + + + + + Qt Assistant + Qt Assistant + + + + Could not register documentation file +%1 + +Reason: +%2 + Soubor s dokumentací %1 nelze zaznamenat + +Důvod: +%2 + + + + Documentation successfully registered. + Dokumentace byla úspěšně zaznamenána. + + + + Could not unregister documentation file +%1 + +Reason: +%2 + Zaznamenání souboru s dokumentací %1 nelze zrušit + +Grund: +%2 + + + + Documentation successfully unregistered. + Dokumentace byla úspěšně odstraněna. + + + + Cannot load sqlite database driver! + Databázový ovladač pro SQLite nelze nahrát! + + + + The specified collection file could not be read! + Zadaný sbírkový soubor nelze přečíst! + + + + RemoteControl + + + Debugging Remote Control + Ladí se dálkové ovládání + + + + Received Command: %1 %2 + Přijatý příkaz: %1 : %2 + + + + SearchWidget + + + &Copy + &Kopírovat + + + + Copy &Link Location + &Kopírovat adresu odkazu + + + + Open Link in New Tab + Otevřít odkaz v nové kartě + + + + Select All + Vybrat vše + + + + TopicChooser + + + Choose a topic for <b>%1</b>: + Vyberte námět pro <b>%1</b>: + + + + Choose Topic + Vybrat námět + + + + &Topics + &Náměty + + + + &Display + &Zobrazit + + + + &Close + &Zavřít + + + diff --git a/translations/designer_cs.ts b/translations/designer_cs.ts new file mode 100644 index 0000000..ea33a57 --- /dev/null +++ b/translations/designer_cs.ts @@ -0,0 +1,7051 @@ + + + + + AbstractFindWidget + + + &Previous + &Předchozí + + + + &Next + &Další + + + + &Case sensitive + &Rozlišující velká a malá písmena + + + + Whole &words + Celá &slova + + + + <img src=":/trolltech/shared/images/wrap.png">&nbsp;Search wrapped + <img src=":/trolltech/shared/images/wrap.png">&nbsp;Hledání dosáhlo konce + + + + AddLinkDialog + + + Insert Link + Vložit odkaz + + + + Title: + Název: + + + + URL: + URL: + + + + AppFontDialog + + + Additional Fonts + Dodatečná písma + + + + AppFontManager + + + '%1' is not a file. + '%1' není soubor. + + + + The font file '%1' does not have read permissions. + Soubor s písmem '%1' nemá oprávnění ke čtení. + + + + The font file '%1' is already loaded. + Soubor s písmem '%1' je již nahrán. + + + + The font file '%1' could not be loaded. + Soubor s písmem '%1' se nepodařilo nahrát. + + + + '%1' is not a valid font id. + '%1' není platným písmovým ID. + + + + There is no loaded font matching the id '%1'. + Není nahráno žádné písmo s ID '%1'. + + + + The font '%1' (%2) could not be unloaded. + Písmo '%1' (%2) se nepodařilo uvolnit z paměti. + + + + AppFontWidget + + + Fonts + Písma + + + + Add font files + Přidat soubory s písmy + + + + Remove current font file + Odstranit současný soubor s písmem + + + + Remove all font files + Odstranit všechny soubory s písmy + + + + Add Font Files + Přidat soubory s písmy + + + + Font files (*.ttf) + Soubory s písmy (*.ttf) + + + + Error Adding Fonts + Chyba při přidávání písem + + + + Error Removing Fonts + Chyba při odstraňování písem + + + + Remove Fonts + Odstranit písma + + + + Would you like to remove all fonts? + Chcete odstranit všechna písma? + + + + AppearanceOptionsWidget + + + Form + Formulář + + + + User Interface Mode + Okenní režim + + + + AssistantClient + + + Unable to send request: Assistant is not responding. + Chyba při posílání požadavku: Program Assistant neodpovídá. + + + + The binary '%1' does not exist. + Proveditelný soubor '%1' neexistuje. + + + + Unable to launch assistant (%1). + Program Assistant nelze spustit (%1). + + + + BrushPropertyManager + + + Style + Styl + + + + No brush + Žádný vzor + + + + Solid + Plný + + + + Dense 1 + Hustota 1 + + + + Dense 2 + Hustota 2 + + + + Dense 3 + Hustota 3 + + + + Dense 4 + Hustota 4 + + + + Dense 5 + Hustota 5 + + + + Dense 6 + Hustota 6 + + + + Dense 7 + Hustota 7 + + + + Horizontal + Vodorovný + + + + Vertical + Svislý + + + + Cross + Křížící se čáry + + + + Backward diagonal + Zpětné úhlopříčky + + + + Forward diagonal + Vpřed směřující úhlopříčky + + + + Crossing diagonal + Křížící se úhlopříčky + + + + Color + Barva + + + + [%1, %2] + [%1, %2] + + + + Command + + + + Change signal + Změnit signál + + + + + Change slot + Změnit zdířku + + + + Change signal-slot connection + Změnit spojení signál-zdířka + + + + Change sender + Změnit vysílač + + + + Change receiver + Změnit přijímač + + + + Add connection + Přidat spojení + + + + Adjust connection + Nastavit spojení + + + + Delete connections + Smazat spojení + + + + Change source + Změnit zdroj + + + + Change target + Změnit koncový bod + + + + Insert '%1' + Vložit '%1' + + + + Raise '%1' + '%1' dopředu + + + + Lower '%1' + '%1' dozadu + + + + Delete '%1' + Smazat '%1' + + + + Reparent '%1' + Přiřadit jiný prvek '%1' + + + + Promote to custom widget + Vytvořit zástupný symbol pro uživatelsky stanovený prvek + + + + Demote from custom widget + Odstranit zástupný symbol pro uživatelsky stanovenou třídu + + + + Lay out using grid + Rozmístit předměty tabulkově + + + + Lay out vertically + Rozmístit předměty svisle + + + + Lay out horizontally + Rozmístit předměty vodorovně + + + + Break layout + Zrušit rozvržení + + + + + + Move Page + Posunout stranu + + + + + + + Delete Page + Smazat stranu + + + + + Page + Strana + + + + page + Strana + + + + + + + Insert Page + Vložit stranu + + + + Change Tab order + Změnit pořadí karet + + + + Create Menu Bar + Vytvořit nabídkový pruh + + + + Delete Menu Bar + Smazat nabídkový pruh + + + + Create Status Bar + Vytvořit stavový pruh + + + + Delete Status Bar + Smazat stavový pruh + + + + Add Tool Bar + Přidat nástrojový pruh + + + + Add Dock Window + Přidat ukotvené okno + + + + Adjust Size of '%1' + Upravit velikost '%1' + + + + Change Form Layout Item Geometry + Změnit uspořádání prvku rozvržení formuláře + + + + Change Layout Item Geometry + Změnit uspořádání prvku rozvržení + + + + Change Table Contents + Změnit obsah tabulky + + + + Change Tree Contents + Změnit obsah stromu + + + + + Add action + Přidat činnost + + + + + Remove action + Odstranit činnost + + + + Add menu + Přidat nabídku + + + + Remove menu + Odstranit nabídku + + + + Create submenu + Vytvořit vedlejší nabídku + + + + Delete Tool Bar + Smazat nástrojový pruh + + + + Set action text + Nastavit text k činnosti + + + + Insert action + Vložit činnost + + + + + Move action + Posunout činnost + + + + Change Title + Změnit název + + + + Insert Menu + Vložit nabídku + + + + Change signals/slots + Změnit signály/zdířky + + + + Delete Subwindow + Smazat podokno + + + + Insert Subwindow + Vložit podokno + + + + subwindow + Podokno + + + + Subwindow + Podokno + + + + Change Z-order of '%1' + Změnit Z-pořadí '%1' + + + + Simplify Grid Layout + Zjednodušit tabulkové rozvržení + + + + Create button group + Seskupit tlačítka + + + + Break button group + Zrušit seskupení tlačítek + + + + Break button group '%1' + Zrušit seskupení '%1' + + + + Add buttons to group + Přidat tlačítka do seskupení + + + + Remove buttons from group + Odstranit tlačítka ze seskupení + + + + Morph %1/'%2' into %3 + MorphWidgetCommand description + Přeměnit %1/'%2' na %3 + + + + Change layout of '%1' from %2 to %3 + Změnit rozvržení '%1' z %2 na %3 + + + + + Add '%1' to '%2' + Command description for adding buttons to a QButtonGroup + Přidat '%1' k '%2' + + + + Remove '%1' from '%2' + Command description for removing buttons from a QButtonGroup + Odstranit '%1' z '%2' + + + + Change script + Změnit skript + + + + Changed '%1' of '%2' + Změněno '%1' z '%2' + + + + Changed '%1' of %n objects + Singular will never be shown + + Změněna vlastnost '%1' jednoho předmětu + Změněna vlastnost '%1' %n předmětů + Změněna vlastnost '%1' %n předmětů + + + + + Reset '%1' of '%2' + Znovu nastavit '%1' '%2' + + + + Reset '%1' of %n objects + Singular will never be shown + + Znovu nastavit '%1' jednoho předmětu + Znovu nastavit '%1' %n předmětů + Znovu nastavit '%1' %n předmětů + + + + + Add dynamic property '%1' to '%2' + Přidat dynamickou vlastnost '%1' do '%2' + + + + Add dynamic property '%1' to %n objects + Singular will never be shown + + Přidat dynamickou vlastnost '%1' do jednoho předmětu + Přidat dynamickou vlastnost '%1' do %n předmětů + Přidat dynamickou vlastnost '%1' do %n předmětů + + + + + Remove dynamic property '%1' from '%2' + Odstranit dynamickou vlastnost '%1' z '%2' + + + + Remove dynamic property '%1' from %n objects + + Odstranit dynamickou vlastnost '%1' z jednoho předmětu + Odstranit dynamickou vlastnost '%1' z %n předmětů + Odstranit dynamickou vlastnost '%1' z %n předmětů + + + + + ConnectDialog + + + Configure Connection + Upravit spojení + + + + GroupBox + GroupBox + + + + Edit... + Upravit... + + + + Show signals and slots inherited from QWidget + Ukázat signály a zdířky zděděné z QWidget + + + + ConnectionDelegate + + + <object> + <Předmět> + + + + <signal> + <Signál> + + + + <slot> + <Zdířka> + + + + DPI_Chooser + + + Standard (96 x 96) + Embedded device standard screen resolution + Obvyklé rozlišení (96 x 96) + + + + Greenphone (179 x 185) + Embedded device screen resolution + Greenphone (179 x 185) + + + + High (192 x 192) + Embedded device high definition screen resolution + Vysoké rozlišení (192 x 192) + + + + Designer + + + Qt Designer + Qt Designer + + + + Unable to launch %1. + %1 se nepodařilo spustit. + + + + %1 timed out. + Překročení času při provedení %1. + + + + This file contains top level spacers.<br>They have <b>NOT</b> been saved into the form. + Formulář obsahuje volně stojící prvky rozložení, které <b>NEBYLY</b> uloženy do formuláře. + + + + Perhaps you forgot to create a layout? + Přidal jste rozvržení? + + + + This file cannot be read because it was created using %1. + Soubor nelze přečíst, protože byl vytvořen %1. + + + + This file was created using Designer from Qt-%1 and cannot be read. + Soubor nelze přečíst, protože byl vytvořen programem Designer ve verzi %1. + + + + This file cannot be read because the extra info extension failed to load. + Soubor nelze přečíst (Chyba při nahrávání dat ExtraInfoExtension). + + + + The converted file could not be read. + Převedený soubor se nepodařilo přečíst. + + + + Invalid UI file: The root element <ui> is missing. + Chyba při čtení souboru s rozhraním: Kořenový prvek <ui> chybí. + + + + An error has occurred while reading the UI file at line %1, column %2: %3 + Chyba při čtení souboru s rozhraním, řádek %1, sloupec %2: %3 + + + + This file was created using Designer from Qt-%1 and will be converted to a new form by Qt Designer. + Soubor byl vytvořen programem Designer ve verzi %1 a bude převeden na nový formulář pomocí programu Qt Designer. + + + + The old form has not been touched, but you will have to save the form under a new name. + Starý formulář zůstává nezměněn. Nový formulář musí být uložen pod novým názvem. + + + + This file was created using Designer from Qt-%1 and could not be read: +%2 + Čtení Designerem %1 vytvořeného souboru se nezdařilo: +%2 + + + + Please run it through <b>uic3&nbsp;-convert</b> to convert it to Qt-4's ui format. + Přeměňte to, prosím, příkazem <b>uic3&nbsp;-convert</b> na formát rozhraní Qt 4. + + + + Custom Widgets + Uživatelsky stanovené prvky + + + + Promoted Widgets + Zástupný symbol pro uživatelsky stanovené prvky + + + + DesignerMetaEnum + + + %1 is not a valid enumeration value of '%2'. + %1 není platnou výčtovou hodnotou '%2'. + + + + '%1' could not be converted to an enumeration value of type '%2'. + '%1' se nepodařilo převést na výčtovou hodnotu typu '%2'. + + + + DesignerMetaFlags + + + '%1' could not be converted to a flag value of type '%2'. + '%1' se nepodařilo převést na příznakovou hodnotu typu '%2'. + + + + DeviceProfile + + + '%1' is not a number. + Reading a number for an embedded device profile + '%1' není platným číslem. + + + + An invalid tag <%1> was encountered. + Byl zjištěn neplatný prvek'%1'. + + + + DeviceProfileDialog + + + &Family + &Písmová rodina + + + + &Point Size + &Bodová velikost + + + + Style + Styl + + + + Device DPI + Rozlišení obrazovky + + + + Name + Název + + + + DeviceSkin + + + The image file '%1' could not be loaded. + Soubor s obrázkem '%1' se nepodařilo nahrát. + + + + The skin directory '%1' does not contain a configuration file. + Adresář se vzhledem '%1' neobsahuje žádný soubor s nastavením. + + + + The skin configuration file '%1' could not be opened. + Soubor s nastavením vzhledu '%1' se nepodařilo otevřít. + + + + Syntax error: %1 + Chyba ve skladbě: %1 + + + + The skin cursor image file '%1' does not exist. + Soubor s obrázkem pro vzhled ukazovátka '%1' neexistuje. + + + + Syntax error in area definition: %1 + Vymezení oblasti obsahuje chybu ve skladbě: %1 + + + + Mismatch in number of areas, expected %1, got %2. + Zadaný počet oblastí (%1) neodpovídá; byly nalezeny %2 oblasti. + + + + The skin configuration file '%1' could not be read: %2 + Soubor s nastavením vzhledu '%1' se nepodařilo přečíst: %2 + + + + The skin "up" image file '%1' does not exist. + Soubor s nastavením vzhledu '%1' (nahoru) neexistuje. + + + + The skin "down" image file '%1' does not exist. + Soubor s nastavením vzhledu '%1' (dolů) neexistuje. + + + + The skin "closed" image file '%1' does not exist. + Soubor s nastavením vzhledu '%1' (zavřeno) neexistuje. + + + + EmbeddedOptionsControl + + + <html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Style</b></td><td>%3</td></tr><tr><td><b>Resolution</b></td><td>%4 x %5</td></tr></table></html> + Format embedded device profile description + <html><table><tr><td><b>Font</b></td><td>%1, %2</td></tr><tr><td><b>Stil</b></td><td>%3</td></tr><tr><td><b>Rozlišení</b></td><td>%4 x %5</td></tr></table></html> + + + + EmbeddedOptionsPage + + + Embedded Design + Tab in preferences dialog + Vložený návrh + + + + Device Profiles + EmbeddedOptionsControl group box" + Profily zařízení + + + + FontPanel + + + Font + Písmo + + + + &Writing system + Způsob &psaní + + + + &Family + &Písmová rodina + + + + &Style + &Styl + + + + &Point size + &Bodová velikost + + + + FontPropertyManager + + + PreferDefault + Upřednostňovat výchozí + + + + NoAntialias + Žádné vyhlazování + + + + PreferAntialias + Upřednostňovat vyhlazování + + + + Antialiasing + Vyhlazování + + + + FormBuilder + + + Invalid stretch value for '%1': '%2' + Parsing layout stretch values + Neplatná hodnota roztažení pro '%1': '%2' + + + + Invalid minimum size for '%1': '%2' + Parsing grid layout minimum size values + Neplatná nejmenší velikost pro '%1': '%2' + + + + FormEditorOptionsPage + + + %1 % + %1 % + + + + Preview Zoom + Velikost zvětšení pro náhled + + + + Default Zoom + Výchozí zvětšení + + + + Forms + Tab in preferences dialog + Formuláře + + + + Default Grid + Výchozí mřížka pro nové formuláře + + + + FormLayoutRowDialog + + + Add Form Layout Row + Přidat řádek s rozvržením formuláře + + + + &Label text: + &Text popisku: + + + + Field &type: + &Typ datového pole: + + + + &Field name: + &Název pole: + + + + &Buddy: + &Kamarád: + + + + &Row: + &Řádek: + + + + Label &name: + &Název popisku: + + + + FormWindow + + + Unexpected element <%1> + Neplatný prvek <%1> + + + + Error while pasting clipboard contents at line %1, column %2: %3 + Chyba při vložení obsahu schránky, řádek %1, sloupec %2: %3 + + + + FormWindowSettings + + + Form Settings + Nastavení formuláře + + + + Layout &Default + &Výchozí rozvržení + + + + &Spacing: + &Odstup: + + + + &Margin: + &Okraj: + + + + &Layout Function + &Funkce rozvržení + + + + Ma&rgin: + Ok&raj: + + + + Spa&cing: + Odstu&p: + + + + Embedded Design + Vložený návrh + + + + &Author + &Autor + + + + &Include Hints + &Zahrnout rady + + + + &Pixmap Function + &Funkce pixmapy + + + + Grid + Mřížka + + + + IconSelector + + + All Pixmaps ( + Všechny soubory s pixmapami ( + + + + ItemPropertyBrowser + + + XX Icon Selected off + Sample string to determinate the width for the first column of the list item property browser + Vybraná ikona, z + + + + MainWindowBase + + + Main + Not currently used (main tool bar) + Hlavní pruh s nástroji + + + + File + Soubor + + + + Edit + Úpravy + + + + Tools + Nástroje + + + + Form + Formulář + + + + Qt Designer + Qt Designer + + + + NewForm + + + C&reate + &Vytvořit nový z předlohy + + + + Recent + Naposledy otevřený + + + + &Close + &Zavřít + + + + &Open... + &Otevřít... + + + + &Recent Forms + &Naposledy otevřené formuláře + + + + Read error + Chyba při čtení + + + + New Form + Nový formulář + + + + Show this Dialog on Startup + Ukázat tento dialog při spuštění + + + + A temporary form file could not be created in %1. + V adresáři %1 se nepodařilo vytvořit dočasný soubor s formulářem. + + + + The temporary form file %1 could not be written. + Dočasný soubor s formulářem %1 se nepodařilo zapsat. + + + + ObjectInspectorModel + + + Object + Předmět + + + + Class + Třída + + + + separator + Oddělovač + + + + <noname> + <nepojmenovaný> + + + + ObjectNameDialog + + + Change Object Name + Změnit název předmětu + + + + Object Name + Název předmětu + + + + PluginDialog + + + Plugin Information + Přídavné moduly + + + + 1 + 1 + + + + PreferencesDialog + + + Preferences + Nastavení + + + + PreviewConfigurationWidget + + + Form + Formulář + + + + Print/Preview Configuration + Nastavení tisku/náhledu + + + + Style + Styl + + + + Style sheet + Předlohový list + + + + ... + ... + + + + Device skin + Vzhled pro zařízení + + + + PromotionModel + + + Not used + Usage of promoted widgets + Nepoužívaný + + + + Q3WizardContainer + + + + Page + Strana + + + + QAbstractFormBuilder + + + Unexpected element <%1> + Neplatný prvek <%1> + + + + An error has occurred while reading the UI file at line %1, column %2: %3 + Chyba při čtení souboru s rozhraním, řádek %1, sloupec %2: %3 + + + + Invalid UI file: The root element <ui> is missing. + Chyba při čtení souboru s rozhraním: Kořenový prvek <ui> chybí. + + + + The creation of a widget of the class '%1' failed. + Nepodařilo se vytvořit žádný prvek třídy '%1'. + + + + Attempt to add child that is not of class QWizardPage to QWizard. + Pokus o přidání strany předmětu třídy QWizard, která není typu QWizardPage. + + + + Attempt to add a layout to a widget '%1' (%2) which already has a layout of non-box type %3. +This indicates an inconsistency in the ui-file. + Pokus o přidání rozvržení na prvek '%1' (%2), který již má rozvržení typu %3 hat. Ukazuje to na nesrovnalost v souboru s rozhraním. + + + + Empty widget item in %1 '%2'. + Prázdná položka prvku v %1 '%2'. + + + + Flags property are not supported yet. + Vlastnosti typu "příznak" nejsou podporovány. + + + + While applying tab stops: The widget '%1' could not be found. + Chyba při stanovení pořadí tabulátorů: Nepodařilo se nalézt žádný prvek s názvem '%1'. + + + + Invalid QButtonGroup reference '%1' referenced by '%2'. + Neplatný odkaz na skupinu tlačítek '%1', odkazováno '%2'. + + + + This version of the uitools library is linked without script support. + Tato verze knihovny uitools nepodporuje skripty. + + + + QAxWidgetPlugin + + + ActiveX control + Ovládací prvek ActiveX + + + + ActiveX control widget + Ovládací prvek ActiveX + + + + QAxWidgetTaskMenu + + + Set Control + Nastavit ovládací prvek + + + + Reset Control + Nastavit znovu ovládací prvek + + + + Licensed Control + Licencovaný ovládací prvek + + + + The control requires a design-time license + Ovládací prvek vyžaduje licenci k času návrhu + + + + QCoreApplication + + + %1 is not a promoted class. + %1 není zástupným symbolem pro uživatelsky stanovenou třídu. + + + + The base class %1 is invalid. + %1 není platnou základní třídou. + + + + The class %1 already exists. + Již existuje třída s názvem %1. + + + + Promoted Widgets + Zástupný symbol pro uživatelsky stanovené prvky + + + + The class %1 cannot be removed + Třída %1 nemůže být odstraněna + + + + The class %1 cannot be removed because it is still referenced. + Třída %1 nemůže být odstraněna, protože se stále používá. + + + + The class %1 cannot be renamed + Třída %1 nemůže být přejmenována + + + + The class %1 cannot be renamed to an empty name. + Název pro třídu nemůže zůstat prázdný (%1). + + + + There is already a class named %1. + Již existuje třída s názvem %1. + + + + Cannot set an empty include file. + Název pro hlavičkový soubor nemůže zůstat prázdný. + + + + Exception at line %1: %2 + Chyba výjimky na řádku %1: %2 + + + + Unknown error + Neznámá chyba + + + + An error occurred while running the script for %1: %2 +Script: %3 + Při provádění skriptu pro %1 se vyskytla chyba: %2Skript: %3 + + + + QDesigner + + + %1 - warning + %1 - Upozornění + + + + Qt Designer + Qt Designer + + + + This application cannot be used for the Console edition of Qt + Tato aplikace se nedá používat pro konzolové vydání Qt + + + + QDesignerActions + + + Edit Widgets + Upravit prvky + + + + &Quit + &Ukončit + + + + &Minimize + &Zmenšit + + + + Bring All to Front + Ukázat všechny formuláře + + + + Preferences... + Nastavení... + + + + Clear &Menu + Smazat &nabídku + + + + CTRL+SHIFT+S + CTRL+SHIFT+S + + + + CTRL+R + CTRL+R + + + + CTRL+M + CTRL+M + + + + Qt Designer &Help + &Nápověda k programu Qt Designer + + + + Current Widget Help + Nápověda k vybranému prvku + + + + What's New in Qt Designer? + Co je nového v programu Qt Designer? + + + + About Plugins + Přídavné moduly + + + + + About Qt Designer + O programu Qt Designer + + + + About Qt + O Qt + + + + + Open Form + Otevřít formulář + + + + + + Designer UI files (*.%1);;All Files (*) + Soubory rozhraní programu Designer (*.%1);;Všechny soubory (*) + + + + %1 already exists. +Do you want to replace it? + Soubor %1 již existuje. +Chcete jej nahradit? + + + + Saved %1. + Formulář %1 byl uložen. + + + + &Recent Forms + &Naposledy otevřené formuláře + + + + Designer + Designer + + + + Feature not implemented yet! + Tato funkce ještě není provedena! + + + + Read error + Chyba při čtení + + + + %1 +Do you want to update the file location or generate a new form? + %1 +Chcete zadat jiný název pro soubor, nebo vytvořit nový formulář? + + + + &Update + &Jiný název + + + + &New Form + &Nový formulář + + + + + Save Form? + Uložit formulář? + + + + Could not open file + Soubor se nepodařilo otevřít + + + + + The backup file %1 could not be written. + Ukládání na pozadí: Soubor se zálohou %1 se nepodařilo zapsat. + + + + The backup directory %1 could not be created. + Ukládání na pozadí: Adresář se zálohou %1 se nepodařilo. + + + + The temporary backup directory %1 could not be created. + Ukládání na pozadí: Dočasný adresář se zálohou %1 se nepodařilo. + + + + Please close all forms to enable the loading of additional fonts. + Zavřete, prosím, všechny formuláře kvůli umožnění nahrání dodatečných písem. + + + + Select New File + Vybrat nový soubor + + + + Could not write file + Soubor se nepodařilo zapsat + + + + &Close Preview + &Zavřít náhled + + + + Save &Image... + &Uložit obraz... + + + + &Print... + &Tisk... + + + + Additional Fonts... + Dodatečná písma... + + + + The file %1 could not be opened. +Reason: %2 +Would you like to retry or select a different file? + Soubor %1 se nepodařilo otevřít: +%2 +Chcete to zkusit ještě jednou, nebo vybrat jiný soubor? + + + + It was not possible to write the entire file %1 to disk. +Reason:%2 +Would you like to retry? + Soubor %1 se nepodařilo úplně zapsat na disk: +Důvod: %2 +Chcete to zkusit ještě jednou? + + + + Image files (*.%1) + Soubory s obrazem (*.%1) + + + + + Save Image + Uložit obraz + + + + The file %1 could not be written. + Soubor %1 se nepodařilo zapsat. + + + + &New... + &Nový... + + + + &Open... + &Otevřít... + + + + &Save + &Uložit + + + + Save &As... + Uložit &jako... + + + + Save A&ll + &Uložit vše + + + + Save As &Template... + Uložit jako &předlohu... + + + + + &Close + &Zavřít + + + + View &Code... + Ukázat &kód... + + + + + Save Form As + Uložit formulář jako + + + + Preview failed + Nepodařilo se vytvořit žádný náhled + + + + Code generation failed + Nepodařilo se vytvořit žádný kód + + + + + Assistant + Assistant + + + + Saved image %1. + Obraz byl uložen pod %1. + + + + Printed %1. + %1 byl vytištěn. + + + + ALT+CTRL+S + ALT+CTRL+S + + + + QDesignerAppearanceOptionsPage + + + Appearance + Tab in preferences dialog + Vzhled + + + + QDesignerAppearanceOptionsWidget + + + Docked Window + Režim ukotveného okna + + + + Multiple Top-Level Windows + Režim více oken + + + + Toolwindow Font + Písmo pro okno s nástroji + + + + QDesignerAxWidget + + + Reset control + Nastavit znovu ovládací prvek + + + + Set control + Nastavit ovládací prvek + + + + Control loaded + Ovládací prvek nahrán + + + + A COM exception occurred when executing a meta call of type %1, index %2 of "%3". + Při vyvolání postupu typu %1 se vyskytla výjimka COM, rejstřík %2 "%3". + + + + QDesignerFormBuilder + + + Script errors occurred: + Vyskytly se chyby ve skriptech: + + + + The preview failed to build. + Nepodařilo se vytvořit žádný náhled. + + + + Designer + Designer + + + + QDesignerFormWindow + + + %1 - %2[*] + %1 - %2[*] + + + + Save Form? + Uložit formulář? + + + + Do you want to save the changes to this document before closing? + Chcete v tomto formuláři uložit před zavřením změny? + + + + If you don't save, your changes will be lost. + Pokud neprovedete uložení, budou vaše změny ztraceny. + + + + QDesignerMenu + + + Type Here + Zadejte text + + + + Add Separator + Přidat oddělovač + + + + Insert separator + Vložit oddělovač + + + + Remove action '%1' + Odstranit činnost '%1' + + + + Remove separator + Odstranit oddělovač + + + + + Add separator + Přidat oddělovač + + + + Insert action + Vložit činnost + + + + QDesignerMenuBar + + + Type Here + Zadejte text + + + + Remove Menu '%1' + Odstranit nabídku '%1' + + + + Remove Menu Bar + Odstranit pruh s nabídkou + + + + Menu + Nabídka + + + + QDesignerPluginManager + + + An XML error was encountered when parsing the XML of the custom widget %1: %2 + Chyba při vyhodnocování XML uživatelsky stanoveného prvku %1: %2 + + + + A required attribute ('%1') is missing. + U prvku chybí vyžadovaná vlastnost ('%1'). + + + + An invalid property specification ('%1') was encountered. Supported types: %2 + '%1' není platným vymezením vlastnosti. Jsou podporovány následující typy: %2 + + + + '%1' is not a valid string property specification. + '%1' není platným vymezením vlastnosti řetězce znaků. + + + + The XML of the custom widget %1 does not contain any of the elements <widget> or <ui>. + Kód XML pro prvek %1 neobsahuje platný kořenový prvek (<widget>, nebo <ui>). + + + + The class attribute for the class %1 is missing. + Chybí vlastnost třídy pro třídu %1. + + + + The class attribute for the class %1 does not match the class name %2. + Vlastnost třídy pro třídu %1 neodpovídá názvu třídy (%2). + + + + QDesignerPropertySheet + + + Dynamic Properties + Dynamické vlastnosti + + + + QDesignerResource + + + The layout type '%1' is not supported, defaulting to grid. + Typ rozvržení '%1' není podporován; bylo vytvořeno mřížkové rozvržení. + + + + The container extension of the widget '%1' (%2) returned a widget not managed by Designer '%3' (%4) when queried for page #%5. +Container pages should only be added by specifying them in XML returned by the domXml() method of the custom widget. + Kontejnerové rozšíření prvku '%1' (%2) vrátilo pro stranu %5 prvek '%3' (%4), který není spravován programem Designer. +Kontejnerové stránky by měly být zadány výhradně v XML vráceném postupu domXML() uživatelsky stanoveného prvku. + + + + Unexpected element <%1> + Parsing clipboard contents + Neplatný prvek <%1> + + + + Error while pasting clipboard contents at line %1, column %2: %3 + Parsing clipboard contents + Chyba při vložení obsahu schránky, řádek %1, sloupec %2: %3 + + + + Error while pasting clipboard contents: The root element <ui> is missing. + Parsing clipboard contents + Chyba při vložení obsahu schránky: Kořenový prvek <ui> chybí. + + + + QDesignerSharedSettings + + + The template path %1 could not be created. + Adresář s předlohami %1 se nepodařilo zřídit. + + + + An error has been encountered while parsing device profile XML: %1 + Při čtení XML profilu zařízení se vyskytla chyba: %1 + + + + QDesignerToolWindow + + + Property Editor + Editor vlastností + + + + Action Editor + Editor činností + + + + Object Inspector + Ukazatel předmětů + + + + Resource Browser + Prohlížeč zdrojů + + + + Signal/Slot Editor + Editor signálů a zdířek + + + + Widget Box + Krabice s prvky + + + + QDesignerWorkbench + + + &File + &Soubor + + + + F&orm + F&ormulář + + + + Preview in + Náhled v + + + + &Window + &Okno + + + + &Help + &Nápověda + + + + Edit + Úpravy + + + + Toolbars + Nástrojové pruhy + + + + Save Forms? + Uložit formuláře? + + + + &View + &Pohled + + + + &Settings + &Nastavení + + + + Widget Box + Krabice s prvky + + + + If you do not review your documents, all your changes will be lost. + Změny budou ztraceny, pokud se na formuláře ještě jednou nepodíváte. + + + + Discard Changes + Zahodit změny + + + + Review Changes + Podívat se na změny + + + + Backup Information + Informace o ukládání na pozadí + + + + The last session of Designer was not terminated correctly. Backup files were left behind. Do you want to load them? + Designer zřejmě nebyl řádně ukončen; existují soubory z ukládání na pozadí. Chcete je nahrát? + + + + The file <b>%1</b> could not be opened. + Soubor <b>%1</b> se nepodařilo otevřít. + + + + The file <b>%1</b> is not a valid Designer UI file. + Soubor <b>%1</b> není platným souborem rozhraní programu Designer. + + + + There are %n forms with unsaved changes. Do you want to review these changes before quitting? + + Formulář byl změněn, ale změny nebyl uloženy. Chcete se na tyto změny podívat předtím, než program ukončíte? + %n formuláře byly změněny, ale změny nebyl uloženy. Chcete se na tyto změny podívat předtím, než program ukončíte? + %n formuláře byly změněny, ale změny nebyl uloženy. Chcete se na tyto změny podívat předtím, než program ukončíte? + + + + + QFormBuilder + + + An empty class name was passed on to %1 (object name: '%2'). + Empty class name passed to widget factory method + Postupu %1 byl předán prázdný název třídy (název předmětu '%2'). + + + + QFormBuilder was unable to create a custom widget of the class '%1'; defaulting to base class '%2'. + QFormBuilderu se nepodařilo vytvořit uživatelsky stanovený prvek třídy '%1'; byl vytvořen prvek základní třídy '%2'. + + + + QFormBuilder was unable to create a widget of the class '%1'. + QFormBuilderu se nepodařilo vytvořit předmět třídy '%1'. + + + + The layout type `%1' is not supported. + Rozvržení typu `%1' nejsou podporována. + + + + The set-type property %1 could not be read. + Vlastnost %1 se nepodařilo přečíst (typ: množství). + + + + The enumeration-type property %1 could not be read. + Vlastnost %1 se nepodařilo přečíst (typ: výčet). + + + + Reading properties of the type %1 is not supported yet. + Čtení vlastností typu %1 není podporováno. + + + + The property %1 could not be written. The type %2 is not supported yet. + Vlastnost %1 se nepodařilo zapsat, protože typ %2 není podporován. + + + + QStackedWidgetEventFilter + + + Previous Page + Předchozí strana + + + + Next Page + Další strana + + + + Delete + Smazat + + + + Before Current Page + Před nynější stranu + + + + After Current Page + Po nynější straně + + + + Change Page Order... + Změnit pořadí stran... + + + + Change Page Order + Změnit pořadí stran + + + + Page %1 of %2 + Strana %1 z %2 + + + + + Insert Page + Vložit stranu + + + + QStackedWidgetPreviewEventFilter + + + Go to previous page of %1 '%2' (%3/%4). + Jít na předchozí stranu %1 '%2' (%3/%4). + + + + Go to next page of %1 '%2' (%3/%4). + Jít na další stranu %1 '%2' (%3/%4). + + + + QTabWidgetEventFilter + + + Delete + Smazat + + + + Before Current Page + Před nynější stranu + + + + After Current Page + Po nynější straně + + + + Page %1 of %2 + Strana %1 z %2 + + + + + Insert Page + Vložit stranu + + + + QToolBoxHelper + + + Delete Page + Smazat stranu + + + + Before Current Page + Před nynější stranu + + + + After Current Page + Po nynější straně + + + + Change Page Order... + Změnit pořadí stran... + + + + Change Page Order + Změnit pořadí stran + + + + Page %1 of %2 + Strana %1 z %2 + + + + Insert Page + Vložit stranu + + + + QtBoolEdit + + + + + True + Pravdivý + + + + + False + Nepravdivý + + + + QtBoolPropertyManager + + + True + Pravdivý + + + + False + Nepravdivý + + + + QtCharEdit + + + Clear Char + Smazat znak + + + + QtColorEditWidget + + + ... + ... + + + + QtColorPropertyManager + + + Red + Červená + + + + Green + Zelená + + + + Blue + Modrá + + + + Alpha + Alfa + + + + QtCursorDatabase + + + Arrow + Šipka + + + + Up Arrow + Šipka nahoru + + + + Cross + Křížící se čáry + + + + Wait + Přesýpací hodiny + + + + IBeam + I trámec + + + + Size Vertical + Zvětšit svisle + + + + Size Horizontal + Zvětšit vodorovně + + + + Size Backslash + Zvětšit zpětné/obrácené lomítko + + + + Size Slash + Zvětšit lomítko + + + + Size All + Zvětšit vše + + + + Blank + Prázdný + + + + Split Vertical + Rozdělit svisle + + + + Split Horizontal + Rozdělit vodorovně + + + + Pointing Hand + Ukazující ruka + + + + Forbidden + Zakázáno + + + + Open Hand + Otevřená ruka + + + + Closed Hand + Zavřená ruka + + + + What's This + A co je toto + + + + Busy + Zaneprázdněn + + + + QtFontEditWidget + + + ... + ... + + + + Select Font + Vybrat písmo + + + + QtFontPropertyManager + + + Family + Písmová rodina + + + + Point Size + Bodová velikost + + + + Bold + Tučné + + + + Italic + Kurzíva + + + + Underline + Podtržení + + + + Strikeout + Přeškrtnuté + + + + Kerning + Podřezávání + + + + QtGradientDialog + + + Edit Gradient + Upravit přechod + + + + QtGradientEditor + + + Start X + Začáteční hodnota x + + + + Start Y + Začáteční hodnota y + + + + Final X + Koncová hodnota x + + + + Final Y + Koncová hodnota y + + + + + Central X + Střed x + + + + + Central Y + Střed y + + + + Focal X + Ohnisko x + + + + Focal Y + Ohnisko y + + + + Radius + Poloměr + + + + Angle + Úhel + + + + Linear + Přímočarý + + + + Radial + Paprskovitý + + + + Conical + Kuželovitý + + + + Pad + Doplnit + + + + Repeat + Opakovat + + + + Reflect + Zrcadlit + + + + Form + Formulář + + + + Gradient Editor + Úpravy přechodů + + + + 1 + 1 + + + + 2 + 2 + + + + 3 + 3 + + + + 4 + 4 + + + + 5 + 5 + + + + Gradient Stops Editor + Editor bodů zastavení přechodu + + + + This area allows you to edit gradient stops. Double click on the existing stop handle to duplicate it. Double click outside of the existing stop handles to create a new stop. Drag & drop the handle to reposition it. Use right mouse button to popup context menu with extra actions. + Tato oblast slouží pro úpravy bodů zastavení přechodu. Dvakrát klepněte na orientační bod kvůli jeho zdvojení. Dvakrát klepněte na plochu kvůli vytvoření nového orientačního bodu. Použijte tažení & upuštění pro posunutí bodu. Pravým tlačítkem myši se vyvolává nabídka s dalšími souvisejícími volbami. + + + + Zoom + Zvětšení + + + + Position + Poloha + + + + Hue + Barevný odstín + + + + H + H + + + + Saturation + Sytost + + + + S + S + + + + Sat + Sytost + + + + Value + Hodnota + + + + V + V + + + + Val + Hodnota + + + + Alpha + Alfa + + + + A + A + + + + Type + Typ + + + + Spread + Rozšiřování + + + + Color + Barva + + + + Current stop's color + Barva nynějšího zastavení + + + + HSV + HSV + + + + RGB + RGB + + + + Current stop's position + Poloha nynějšího zastavení + + + + % + % + + + + Zoom In + Přiblížit + + + + Zoom Out + Oddálit + + + + Toggle details extension + Zařadit další volby + + + + > + > + + + + Linear Type + Přímočarý typ + + + + ... + ... + + + + Radial Type + Paprskovitý typ + + + + Conical Type + Kuželovitý typ + + + + Pad Spread + Doplnit rozšiřování + + + + Repeat Spread + Opakovat rozšiřování + + + + Reflect Spread + Zrcadlit rozšiřování + + + + This area shows a preview of the gradient being edited. It also allows you to edit parameters specific to the gradient's type such as start and final point, radius, etc. by drag & drop. + tato oblast ukazuje náhled právě upravovaného přechodu. Zde můžete upravovat proměnné příznačné pro přechod, jako začáteční a koncový bod, poloměr etd. pomocí tažení a pouštění. + + + + Show HSV specification + Ukázat přesné vymezení HSV + + + + Show RGB specification + Ukázat přesné vymezení RGB + + + + Reset Zoom + Nastavit znovu zvětšení + + + + QtGradientStopsWidget + + + New Stop + Nové zastavení + + + + Delete + Smazat + + + + Flip All + Obrátit vše + + + + Select All + Vybrat vše + + + + Zoom In + Zvětšit + + + + Zoom Out + Zmenšit + + + + Reset Zoom + Nastavit znovu zvětšení + + + + QtGradientView + + + Grad + Přechod + + + + Remove Gradient + Odstranit přechod + + + + Are you sure you want to remove the selected gradient? + Opravdu chcete odstranit vybraný přechod? + + + + + New... + Nový... + + + + + Edit... + Upravit... + + + + + Rename + Přejmenovat + + + + + Remove + Odstranit + + + + Gradient View + Pohled na přechod + + + + QtGradientViewDialog + + + Select Gradient + Vybrat přechod + + + + QtKeySequenceEdit + + + Clear Shortcut + Smazat klávesové zkratky + + + + QtLocalePropertyManager + + + %1, %2 + %1, %2 + + + + Language + Jazyk + + + + Country + Země + + + + QtPointFPropertyManager + + + (%1, %2) + (%1, %2) + + + + X + X + + + + Y + Y + + + + QtPointPropertyManager + + + (%1, %2) + (%1, %2) + + + + X + X + + + + Y + Y + + + + QtPropertyBrowserUtils + + + [%1, %2, %3] (%4) + [%1, %2, %3] (%4) + + + + [%1, %2] + [%1, %2] + + + + QtRectFPropertyManager + + + [(%1, %2), %3 x %4] + [(%1, %2), %3 x %4] + + + + X + X + + + + Y + Y + + + + Width + Šířka + + + + Height + Výška + + + + QtRectPropertyManager + + + [(%1, %2), %3 x %4] + [(%1, %2), %3 x %4] + + + + X + X + + + + Y + Y + + + + Width + Šířka + + + + Height + Výška + + + + QtResourceEditorDialog + + + Edit Resources + Upravit zdroje + + + + New... + Nový... + + + + + New Resource File + Nový zdrojový soubor + + + + <p><b>Warning:</b> The file</p><p>%1</p><p>is outside of the current resource file's parent directory.</p> + <p><b>Upozornění:</b><p>Zvolený soubor: </p><p>%1</p><p>se nachází mimo adresář se nynějším zdrojovým souborem:</p> + + + + <p>To resolve the issue, press:</p><table><tr><th align="left">Copy</th><td>to copy the file to the resource file's parent directory.</td></tr><tr><th align="left">Copy As...</th><td>to copy the file into a subdirectory of the resource file's parent directory.</td></tr><tr><th align="left">Keep</th><td>to use its current location.</td></tr></table> + <p>Zvolte, prosím:</p><table><tr><th align="left">Kopírovat</th><td>pro zkopírování souboru do adresáře se zdrojovým souborem.</td></tr><tr><th align="left">Kopírovat jako...</th><td>pro zkopírování souboru do podadresáře se zdrojovým souborem.</td></tr><tr><th align="left">Zachovat</th><td>, aby se soubor používal ve svém nynějším adresáři.</td></tr></table> + + + + Could not copy +%1 +to +%2 + Kopírování se nezdařilo: +%1 +zu: +%2 + + + + A parse error occurred at line %1, column %2 of %3: +%4 + V souboru %3 se na řádku %1, v sloupci %2 vyskytla chyba: + %4 + + + + Open... + Otevřít... + + + + + Remove + Odstranit + + + + + Move Up + Posunout nahoru + + + + + Move Down + Posunout dolů + + + + + Add Prefix + Přidat předponu + + + + Add Files... + Přidat soubory... + + + + Change Prefix + Změnit předponu + + + + Change Language + Změnit jazyk + + + + Change Alias + Změnit přezdívku + + + + Clone Prefix... + Zdvojit předponu... + + + + Prefix / Path + Předpona/Cesta + + + + Language / Alias + Jazyk/Přezdívka + + + + <html><p><b>Warning:</b> There have been problems while reloading the resources:</p><pre>%1</pre></html> + <html><p><b>Varování:</b> Při opětovném nahrání souboru se vyskytly chyby:</p><pre>%1</pre></html> + + + + Resource Warning + Zdroje - Varování + + + + Dialog + Dialog + + + + New File + Nový soubor + + + + N + N + + + + Remove File + Odstranit soubor + + + + R + L + + + + I + I + + + + New Resource + Nový zdroj + + + + A + A + + + + Remove Resource or File + Odstranit zdroj nebo soubor + + + + %1 already exists. +Do you want to replace it? + Soubor %1 již existuje. +Chcete jej nahradit? + + + + The file does not appear to be a resource file; element '%1' was found where '%2' was expected. + Soubor zřejmě není zdrojovým souborem; Na místě, kde byl očekáván prvek '%2' byl nalezen prvek '%1'. + + + + %1 [read-only] + %1 [pouze pro čtení] + + + + + %1 [missing] + %1 [chybí] + + + + <no prefix> + <žádná předpona> + + + + + Resource files (*.qrc) + Zdrojové soubory (*.qrc) + + + + Import Resource File + Zavést zdrojový soubor + + + + newPrefix + nováPředpona + + + + Add Files + Přidat soubory + + + + Incorrect Path + Nesprávný údaj o cestě + + + + + + + Copy + Kopírovat + + + + Copy As... + Kopírovat jako... + + + + Keep + Zachovat + + + + Skip + Přeskočit + + + + Clone Prefix + Zdvojit předponu + + + + Enter the suffix which you want to add to the names of the cloned files. +This could for example be a language extension like "_de". + Zadejte, prosím, příponu, kterou chcete přidat k názvům zdvojených souborů. +Může to být například jazykové rozšíření "_cs". + + + + + Copy As + Kopírovat jako + + + + <p>The selected file:</p><p>%1</p><p>is outside of the current resource file's directory:</p><p>%2</p><p>Please select another path within this directory.<p> + <p>Vybraný soubor: </p><p>%1</p><p>se nachází mimo adresář se zdrojovým souborem:</p><p>%2</p><p>Zvolte, prosím, jinou cestu, která je obsažena v tomto adresáři.</p> + + + + Could not overwrite %1. + %1 se nepodařilo přepsat. + + + + Save Resource File + Uložit zdrojový soubor + + + + Could not write %1: %2 + Soubor %1 se nepodařilo zapsat: %2 + + + + Open Resource File + Otevřít zdrojový soubor + + + + QtResourceView + + + Size: %1 x %2 +%3 + Velikost: %1 x %2 +%3 + + + + Edit Resources... + Upravit zdroje... + + + + Reload + Nahrát znovu + + + + Copy Path + Kopírovat cestu + + + + QtResourceViewDialog + + + Select Resource + Vybrat zdroj + + + + QtSizeFPropertyManager + + + %1 x %2 + %1 x %2 + + + + Width + Šířka + + + + Height + Výška + + + + QtSizePolicyPropertyManager + + + + <Invalid> + <Neplatný> + + + + [%1, %2, %3, %4] + [%1, %2, %3, %4] + + + + Horizontal Policy + Vodorovné nastavení + + + + Vertical Policy + Svislé nastavení + + + + Horizontal Stretch + Vodorovné protažení + + + + Vertical Stretch + Svislé protažení + + + + QtSizePropertyManager + + + %1 x %2 + %1 x %2 + + + + Width + Šířka + + + + Height + Výška + + + + QtToolBarDialog + + + < S E P A R A T O R > + < O D D Ě L O V A Č > + + + + Customize Toolbars + Přizpůsobit nástrojové pruhy + + + + 1 + 1 + + + + Actions + Činnosti + + + + Toolbars + Nástrojové pruhy + + + + New + Nový + + + + Remove + Odstranit + + + + Rename + Přejmenovat + + + + Up + Nahoru + + + + <- + <- + + + + -> + -> + + + + Down + Dolů + + + + Current Toolbar Actions + Činnosti současného nástrojového pruhu + + + + Custom Toolbar + Uživatelsky stanovené nástrojové pruhy + + + + Add new toolbar + Přidat nový nástrojový pruh + + + + Remove selected toolbar + Odstranit vybraný nástrojový pruh + + + + Rename toolbar + Přejmenovat nástrojový pruh + + + + Move action up + Posunout činnost nahoru + + + + Remove action from toolbar + Odstranit činnost z nástrojového pruhu + + + + Add action to toolbar + Přidat činnost do nástrojového pruhu + + + + Move action down + Posunout činnost dolů + + + + QtTreePropertyBrowser + + + Property + Vlastnost + + + + Value + Hodnota + + + + SaveFormAsTemplate + + + Add path... + Přidat cestu... + + + + Template Exists + Předloha již existuje + + + + A template with the name %1 already exists. +Do you want overwrite the template? + Již existuje předloha s názvem %1. +Chcete tuto předlohu přepsat? + + + + Overwrite Template + Přepsat předlohu + + + + Open Error + Chyba při otevírání + + + + There was an error opening template %1 for writing. Reason: %2 + Předlohu %1 se nepodařilo otevřít pro zápis. Důvod: %2 + + + + Write Error + Chyba při zápisu + + + + There was an error writing the template %1 to disk. Reason: %2 + Předlohu %1 se nepodařilo zapsat do souboru na disku. Důvod: %2 + + + + Pick a directory to save templates in + Vyberte adresář pro ukládání předloh + + + + Save Form As Template + Uložit formulář jako předlohu + + + + &Category: + &Skupina: + + + + &Name: + &Název: + + + + ScriptErrorDialog + + + An error occurred while running the scripts for "%1": + + Při provádění skriptu "%1" se vyskytly chyby: + + + + + SelectSignalDialog + + + Go to slot + Jít na zdířku + + + + Select signal + Vybrat signál + + + + signal + Signál + + + + class + Třída + + + + SignalSlotConnection + + + SENDER(%1), SIGNAL(%2), RECEIVER(%3), SLOT(%4) + VYSÍLAČ(%1), SIGNÁL(%2), PŘIJÍMAČ(%3), ZDÍŘKA(%4) + + + + SignalSlotDialogClass + + + Signals and slots + Signály a zdířky + + + + Slots + Zdířky + + + + ... + ... + + + + Signals + Signály + + + + Add + Přidat + + + + Delete + Smazat + + + + Spacer + + + Horizontal Spacer '%1', %2 x %3 + Vodorovný vymezovač '%1', %2 x %3 + + + + Vertical Spacer '%1', %2 x %3 + Svislý vymezovač '%1', %2 x %3 + + + + TemplateOptionsPage + + + Template Paths + Tab in preferences dialog + Adresáře pro předlohy + + + + ToolBarManager + + + Configure Toolbars... + Nastavit nástrojové pruhy... + + + + Window + Okno + + + + Help + Nápověda + + + + Style + Styl + + + + Dock views + Kotvící okno + + + + Toolbars + Nástrojové pruhy + + + + VersionDialog + + + <h3>%1</h3><br/><br/>Version %2 + <h3>%1</h3><br/><br/>Verze %2 + + + + Qt Designer + Qt Designer + + + + <br/>Qt Designer is a graphical user interface designer for Qt applications.<br/> + <br/>Qt Designer je obrazový návrhář uživatelského rozhraní pro programy Qt.<br/> + + + + %1<br/>Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). + %1<br/>Autorské právo (C) 2009 Nokia Corporation a/nebo její dceřinná společnost(i). + + + + WidgetDataBase + + + The file contains a custom widget '%1' whose base class (%2) differs from the current entry in the widget database (%3). The widget database is left unchanged. + Soubor obsahuje uživatelsky stanovený prvek '%1', jehož základní třída (%2) se neshoduje se současným záznamem v databázi prvků (%3). databáze prvků se nemění. + + + + qdesigner_internal::ActionEditor + + + Actions + Činnosti + + + + New... + Nový... + + + + Delete + Smazat + + + + New action + Nová činnost + + + + Edit action + Upravit činnost + + + + Edit... + Upravit... + + + + Go to slot... + Jít na zdířku... + + + + Copy + Kopírovat + + + + Cut + Vyjmout + + + + Paste + Vložit + + + + Select all + Vybrat vše + + + + Icon View + Pohled s ikonami + + + + Detailed View + Podrobný pohled + + + + Remove actions + Odstranit činnosti + + + + Remove action '%1' + Odstranit činnost '%1' + + + + Used In + Používaný v + + + + Configure Action Editor + Nastavit editor činností + + + + qdesigner_internal::ActionModel + + + Name + Název + + + + Used + Používaný + + + + Text + Text + + + + Shortcut + Klávesová zkratka + + + + Checkable + Zaškrtnutelná + + + + ToolTip + Rada k nástroji + + + + qdesigner_internal::BrushManagerProxy + + + The element '%1' is missing the required attribute '%2'. + U prvku '%1' chybí vyžadovaná vlastnost '%2'.. + + + + Empty brush name encountered. + Chybějící název u vymezení štětce. + + + + An unexpected element '%1' was encountered. + Byl zjištěn neplatný prvek '%1'. + + + + An error occurred when reading the brush definition file '%1' at line line %2, column %3: %4 + Chyba při čtení souboru s vymezením štětce '%1' na řádku %2, sloupec %3: %4 + + + + An error occurred when reading the resource file '%1' at line %2, column %3: %4 + Chyba při čtení zdrojového souboru '%1' na řádku %2, sloupec %3: %4 + + + + qdesigner_internal::BuddyEditor + + + Add buddy + Přidat kamaráda + + + + Remove buddies + Odstranit kamarády + + + + Remove %n buddies + + Odstranit jednoho kamaráda + Odstranit %n kamarády + Odstranit %n kamarády + + + + + Add %n buddies + + Přidat jednoho kamaráda + Přidat %n kamarády + Přidat %n kamarády + + + + + Set automatically + Nastavit automaticky + + + + qdesigner_internal::BuddyEditorPlugin + + + Edit Buddies + Upravit kamarády + + + + qdesigner_internal::BuddyEditorTool + + + Edit Buddies + Upravit kamarády + + + + qdesigner_internal::ButtonGroupMenu + + + Select members + Vybrat členy + + + + Break + Zrušit + + + + qdesigner_internal::ButtonTaskMenu + + + Assign to button group + Přiřadit ke skupině tlačítek + + + + Button group + Skupina tlačítek + + + + New button group + Nová skupina tlačítek + + + + Change text... + Změnit text... + + + + None + Žádný + + + + Button group '%1' + Skupina tlačítek '%1' + + + + qdesigner_internal::CodeDialog + + + Save... + Uložit... + + + + Copy All + Kopírovat vše + + + + &Find in Text... + &Najít v textu... + + + + A temporary form file could not be created in %1. + V adresáři %1 se nepodařilo vytvořit dočasný soubor s formulářem. + + + + The temporary form file %1 could not be written. + Dočasný soubor s formulářem %1 se nepodařilo zapsat. + + + + %1 - [Code] + %1 - [Kód] + + + + Save Code + Uložit kód + + + + Header Files (*.%1) + Hlavičkové soubory (*.%1) + + + + The file %1 could not be opened: %2 + Soubor %1 se nepodařilo otevřít: %2 + + + + The file %1 could not be written: %2 + Soubor %1 se nepodařilo zapsat: %2 + + + + %1 - Error + %1 - Chyba + + + + qdesigner_internal::ColorAction + + + Text Color + Barva textu + + + + qdesigner_internal::ComboBoxTaskMenu + + + Edit Items... + Upravit záznamy... + + + + Change Combobox Contents + Změnit obsah skupinové krabice + + + + qdesigner_internal::CommandLinkButtonTaskMenu + + + Change description... + Změnit popis... + + + + qdesigner_internal::ConnectionEdit + + + Select All + Vybrat vše + + + + Delete + Smazat + + + + Deselect All + Zrušit výběr všeho + + + + qdesigner_internal::ConnectionModel + + + Sender + Vysílač + + + + Signal + Signál + + + + Receiver + Přijímač + + + + Slot + Zdířka + + + + <sender> + <Vysílač> + + + + <signal> + <Signál> + + + + <receiver> + <Přijímač> + + + + <slot> + <Zdířka> + + + + Signal and Slot Editor + Editor signálů a zdířek + + + + The connection already exists!<br>%1 + Toto spojení již existuje!<br>%1</br> + + + + qdesigner_internal::ContainerWidgetTaskMenu + + + Insert Page Before Current Page + Vložit stranu před nynější stranu + + + + Insert Page After Current Page + Vložit stranu po nynější straně + + + + Add Subwindow + Přidat podokno + + + + Delete + Smazat + + + + Insert + Vložit + + + + Subwindow + Podokno + + + + Page + Strana + + + + Page %1 of %2 + Strana %1 z %2 + + + + qdesigner_internal::DPI_Chooser + + + x + DPI X/Y separator + x + + + + System (%1 x %2) + System resolution + Systémové rozlišení (%1 x %2) + + + + User defined + Stanoveno uživatelem + + + + qdesigner_internal::DesignerPropertyManager + + + + AlignLeft + Zarovnat k levému okraji + + + + AlignHCenter + Zarovnat vodorovně na střed + + + + AlignRight + Zarovnat k pravému okraji + + + + AlignJustify + Zarovnat do bloku + + + + AlignTop + Zarovnat k hornímu okraji + + + + + AlignVCenter + Zarovnat svisle na střed + + + + AlignBottom + Zarovnat k dolnímu okraji + + + + %1, %2 + %1, %2 + + + + Customized (%n roles) + + Přizpůsobeno (role) + Přizpůsobeno (%n role) + Přizpůsobeno (%n role) + + + + + Inherited + Zděděno + + + + Horizontal + Vodorovný + + + + Vertical + Svislý + + + + Normal Off + Obvyklé, vypnuto + + + + Normal On + Obvyklé, zapnuto + + + + Disabled Off + Zakázáno, vypnuto + + + + Disabled On + Zakázáno, zapnuto + + + + Active Off + V činnosti, vypnuto + + + + Active On + V činnosti, zapnuto + + + + Selected Off + Vybráno, vypnuto + + + + Selected On + Vybráno, zapnuto + + + + + translatable + Překlad + + + + + disambiguation + Zabránění dvojznačnosti + + + + + comment + Poznámka + + + + qdesigner_internal::DeviceProfileDialog + + + Device Profiles (*.%1) + Profily zařízení (*.%1) + + + + Default + Výchozí + + + + Save Profile + Uložit profil + + + + Save Profile - Error + Chyba při ukládání profilu + + + + Unable to open the file '%1' for writing: %2 + Soubor '%1' se nepodařilo otevřít pro zápis: %2 + + + + Unable to open the file '%1' for reading: %2 + Soubor '%1' se nepodařilo otevřít pro čtení: %2 + + + + '%1' is not a valid profile: %2 + '%1' není platným profilem: %2 + + + + Open profile + Otevřít profil + + + + + Open Profile - Error + Chyba při otevírání profilu + + + + qdesigner_internal::Dialog + + + Dialog + Dialog + + + + StringList + Seznam řetězců znaků + + + + New String + Nový řetězec znaků + + + + &New + &Nový + + + + Delete String + Smazat řetězec znaků + + + + &Delete + &Smazat + + + + &Value: + &Hodnota: + + + + Move String Up + Posunout řetězec znaků nahoru + + + + Up + Nahoru + + + + Move String Down + Posunout řetězec znaků dolů + + + + Down + Dolů + + + + qdesigner_internal::EmbeddedOptionsControl + + + None + Žádný + + + + Add a profile + Přidat profil + + + + Edit the selected profile + Upravit vybraný profil + + + + Delete the selected profile + Smazat vybraný profil + + + + Add Profile + Přidat profil + + + + New profile + Nový profil + + + + Edit Profile + Upravit profil + + + + Delete Profile + Smazat profil + + + + Would you like to delete the profile '%1'? + Chcete smazat profil '%1'? + + + + Default + Výchozí + + + + qdesigner_internal::FilterWidget + + + <Filter> + <FIltr> + + + + qdesigner_internal::FormEditor + + + Resource File Changed + Zdrojový soubor byl změněn + + + + The file "%1" has changed outside Designer. Do you want to reload it? + Zdrojový soubor "%1" byl změněn mimo program Designer. Chcete jej znovu nahrát? + + + + qdesigner_internal::FormLayoutMenu + + + Add form layout row... + Přidat řádek s rozvržením formuláře... + + + + qdesigner_internal::FormWindow + + + Edit contents + Upravit obsah + + + + F2 + F2 + + + + Resize + Změnit velikost + + + + + Key Move + Posunout s pomocí klávesnice + + + + Paste error + Chyba při vložení + + + + Lay out + Rozvržení + + + + + Drop widget + Vložit prvek + + + + Paste %n action(s) + + Vložit jednu činnost + Vložit %n činnosti + Vložit %n činnosti + + + + + Insert widget '%1' + Vložit prvek '%1' + + + + Paste %n widget(s) + + Vložit jeden prvek + Vložit %n prvky + Vložit %n prvky + + + + + Paste (%1 widgets, %2 actions) + Vložit (%1 prvky, %2 činnosti) + + + + Cannot paste widgets. Designer could not find a container without a layout to paste into. + Prvky nelze vložit, protože se nepodařilo nalézt kontejner, který již nemá rozvržení. + + + + Break the layout of the container you want to paste into, select this container and then paste again. + Zrušte, prosím, rozvržení kontejneru, do kterého chcete vkládat. Vyberte jej znovu a proveďte vložení znovu. + + + + Select Ancestor + Vybrat nadřazený prvek + + + + A QMainWindow-based form does not contain a central widget. + Formulář založený na QMainWindow neobsahuje ústřední prvek. + + + + Raise widgets + Přenést prvky do popředí + + + + Lower widgets + Přenést prvky do pozadí + + + + qdesigner_internal::FormWindowBase + + + Delete + Smazat + + + + Delete '%1' + Smazat '%1' + + + + qdesigner_internal::FormWindowManager + + + Cu&t + Vyj&mout + + + + Cuts the selected widgets and puts them on the clipboard + Vyjme vybrané prvky a odloží je do schránky + + + + &Copy + &Kopírovat + + + + Copies the selected widgets to the clipboard + Zkopíruje vybrané prvky do schránky + + + + &Paste + &Vložit + + + + Pastes the clipboard's contents + Vloží obsah schránky + + + + &Delete + &Smazat + + + + Deletes the selected widgets + Smaže vybrané prvky + + + + Select &All + Vybrat &vše + + + + Selects all widgets + Vybere všechny prvky + + + + Bring to &Front + Přenést do &popředí + + + + + Raises the selected widgets + Přenese vybrané prvky do popředí + + + + Send to &Back + Přenést do po&zadí + + + + + Lowers the selected widgets + Přenese vybrané prvky do pozadí + + + + Adjust &Size + Přizpůsobit &velikost + + + + Adjusts the size of the selected widget + Spočítá velikost vybraného prvku z rozvržení a přizpůsobí velikost prvku + + + + Lay Out &Horizontally + Uspořádat předměty &vodorovně + + + + Lays out the selected widgets horizontally + Uspořádá vybrané předměty vodorovně + + + + Lay Out &Vertically + Uspořádat předměty &svisle + + + + Lays out the selected widgets vertically + Uspořádá vybrané předměty svisle + + + + Lay Out in a &Grid + Uspořádat předměty &tabulkově + + + + Lays out the selected widgets in a grid + Uspořádá vybrané předměty tabulkově + + + + Lay Out Horizontally in S&plitter + Uspořádat předměty vodorovně okolo &dělící příčky + + + + Lays out the selected widgets horizontally in a splitter + Uspořádá vybrané předměty vodorovně okolo dělící příčky + + + + Lay Out Vertically in Sp&litter + Uspořádat předměty svisle okolo dě&lící příčky + + + + Lays out the selected widgets vertically in a splitter + Uspořádá vybrané předměty svisle okolo dělící příčky + + + + &Break Layout + &Zrušit rozvržení + + + + Breaks the selected layout + Zruší vybrané rozvržení + + + + &Preview... + &Náhled... + + + + Preview current form + Náhled nynějšího formuláře + + + + Form &Settings... + &Nastavení formuláře... + + + + Break Layout + Zrušit rozvržení + + + + Adjust Size + Přizpůsobit velikost + + + + Could not create form preview + Title of warning message box + Nepodařilo se vytvořit náhled formuláře + + + + Form Settings - %1 + Nastavení formuláře - %1 + + + + Removes empty columns and rows + Odstraní prázdné řádky a sloupce + + + + Lay Out in a &Form Layout + Uspořádat předměty v &rozvržení formuláře + + + + Lays out the selected widgets in a form layout + Uspořádá vybrané předměty v dvousloupcovém rozvržení formuláře + + + + Si&mplify Grid Layout + Z&jednodušit tabulkové rozvržení + + + + qdesigner_internal::FormWindowSettings + + + None + Žádný + + + + Device Profile: %1 + Profil zařízení: %1 + + + + qdesigner_internal::GridPanel + + + Visible + Viditelný + + + + Snap + Zapadnout + + + + Reset + Nastavit znovu + + + + Form + Formulář + + + + Grid + Mřížka + + + + Grid &X + Mřížka &x + + + + Grid &Y + Mřížka &y + + + + qdesigner_internal::GroupBoxTaskMenu + + + Change title... + Změnit název... + + + + qdesigner_internal::HtmlTextEdit + + + Insert HTML entity + Vložit HTML znak + + + + qdesigner_internal::IconSelector + + + The pixmap file '%1' cannot be read. + Soubor s pixmapou '%1' nelze přečíst. + + + + The file '%1' does not appear to be a valid pixmap file: %2 + Soubor '%1' není platným souborem s pixmapou: %2 + + + + The file '%1' could not be read: %2 + Soubor %1 se nepodařilo přečít: %2 + + + + Pixmap Read Error + Chyba při čtení pixmapy + + + + ... + ... + + + + Normal Off + Obvyklé, vypnuto + + + + Normal On + Obvyklé, zapnuto + + + + Disabled Off + Zakázáno, vypnuto + + + + Disabled On + Zakázáno, zapnuto + + + + Active Off + V činnosti, vypnuto + + + + Active On + V činnosti, zapnuto + + + + Selected Off + Vybráno, vypnuto + + + + Selected On + Vybráno, zapnuto + + + + Choose Resource... + Vybrat zdroj... + + + + Choose File... + Vybrat soubor... + + + + Reset + Nastavit znovu + + + + Reset All + Nastavit znovu vše + + + + Choose a Pixmap + Vybrat pixmapu + + + + qdesigner_internal::ItemListEditor + + + Properties &<< + Vlastnosti &<< + + + + + Properties &>> + Vlastnosti &>> + + + + Items List + Seznam prvků + + + + New Item + Nový prvek + + + + &New + &Nový + + + + Delete Item + Smazat prvek + + + + &Delete + &Smazat + + + + Move Item Up + Posunout prvek nahoru + + + + U + U + + + + Move Item Down + Posunout prvek dolů + + + + D + D + + + + qdesigner_internal::LabelTaskMenu + + + Change rich text... + Změnit upravovatelný text... + + + + Change plain text... + Změnit prostý text... + + + + qdesigner_internal::LanguageResourceDialog + + + Choose Resource + Vybrat zdroj + + + + qdesigner_internal::LineEditTaskMenu + + + Change text... + Změnit text... + + + + qdesigner_internal::ListWidgetEditor + + + Edit List Widget + Upravit seznam prvků + + + + Edit Combobox + Upravit skupinovou krabici + + + + New Item + Nový prvek + + + + qdesigner_internal::ListWidgetTaskMenu + + + Edit Items... + Upravit prvky... + + + + Change List Contents + Změnit obsah seznamu + + + + qdesigner_internal::MdiContainerWidgetTaskMenu + + + Next Subwindow + Další podokno + + + + Previous Subwindow + Předchozí podokno + + + + Tile + Uspořádat jedno vedle druhého + + + + Cascade + Překrývat + + + + qdesigner_internal::MenuTaskMenu + + + Remove + Odstranit + + + + qdesigner_internal::MorphMenu + + + Morph into + Přeměnit prvek na + + + + qdesigner_internal::NewActionDialog + + + New Action... + Nová činnost... + + + + &Text: + &Text: + + + + Shortcut: + Klávesová zkratka: + + + + Checkable: + Zaškrtnutelná: + + + + ToolTip: + Rada k nástroji: + + + + ... + ... + + + + &Icon: + &Ikona: + + + + Object &name: + &Název předmětu: + + + + qdesigner_internal::NewDynamicPropertyDialog + + + Set Property Name + Nastavit název vlastnosti + + + + The current object already has a property named '%1'. +Please select another, unique one. + nynější předmět již má vlastnost s názvem '%1'. +Zvolte, prosím, jiný, jedinečný název. + + + + Create Dynamic Property + Vytvořit dynamickou vlastnost + + + + Property Name + Název vlastnosti + + + + Property Type + typ vlastnosti + + + + The '_q_' prefix is reserved for the Qt library. +Please select another name. + Předpona '_q_' je používána knihovnou Qt pro vnitřní účely. +Zvolte, prosím, jiný název. + + + + horizontalSpacer + Vodorovný vymezovač + + + + qdesigner_internal::NewFormWidget + + + Default size + Výchozí velikost + + + + QVGA portrait (240x320) + QVGA formát na výšku (240x320) + + + + QVGA landscape (320x240) + QVGA formát na šířku (320x240) + + + + VGA portrait (480x640) + VGA formát na výšku (480x640) + + + + VGA landscape (640x480) + VGA formát na šířku (640x480) + + + + Widgets + New Form Dialog Categories + Prvky + + + + Custom Widgets + Uživatelsky stanovené prvky + + + + None + Žádný + + + + Error loading form + Formulář se nepodařilo nahrát + + + + Unable to open the form template file '%1': %2 + Nepodařilo se otevřít předlohu s formulářem '%1': %2 + + + + Internal error: No template selected. + Vnitřní chyba: Není vybrána žádná předloha. + + + + 0 + 0 + + + + Choose a template for a preview + Vyberte předlohu pro náhled + + + + Embedded Design + Vložený návrh + + + + Device: + Zařízení: + + + + Screen Size: + Velikost obrazovky: + + + + qdesigner_internal::NewPromotedClassPanel + + + Add + Přidat + + + + New Promoted Class + Nová uživatelsky stanovená třída + + + + Base class name: + Název základní třídy: + + + + Promoted class name: + Název uživatelsky stanovené třídy: + + + + Header file: + Hlavičkový soubor: + + + + Global include + Celkový hlavičkový soubor + + + + Reset + Nastavit znovu + + + + qdesigner_internal::ObjectInspector + + + Change Current Page + Změnit nynější stranu + + + + &Find in Text... + &Najít v textu... + + + + qdesigner_internal::ObjectInspector::ObjectInspectorPrivate + + Change Current Page + Změnit nynější stranu + + + + qdesigner_internal::OrderDialog + + + Index %1 (%2) + Poloha %1 (%2) + + + + Change Page Order + Změnit pořadí stran + + + + Page Order + Pořadí stran + + + + Move page up + Posunout stranu nahoru + + + + Move page down + Posunout stranu dolů + + + + %1 %2 + %1 %2 + + + + qdesigner_internal::PaletteEditor + + + Edit Palette + Upravit paletu + + + + Tune Palette + Vyladit paletu + + + + Show Details + Ukázat podrobnosti + + + + Compute Details + Spočítat podrobnosti + + + + Quick + Jednoduchý + + + + Preview + Náhled + + + + Disabled + Zakázáno + + + + Inactive + Nečinný + + + + Active + V činnosti + + + + qdesigner_internal::PaletteEditorButton + + + Change Palette + Změnit paletu + + + + qdesigner_internal::PaletteModel + + + Color Role + Barevné kolo + + + + Active + V činnosti + + + + Inactive + Nečinný + + + + Disabled + Zakázáno + + + + qdesigner_internal::PixmapEditor + + + Copy Path + Kopírovat cestu + + + + Paste Path + Vložit cestu + + + + Choose Resource... + Vybrat zdroj... + + + + Choose File... + Vybrat soubor... + + + + + ... + ... + + + + qdesigner_internal::PlainTextEditorDialog + + + Edit text + Upravit text + + + + qdesigner_internal::PluginDialog + + + Components + Součásti + + + + Plugin Information + Informace o přídavných modulech + + + + Refresh + Obnovit + + + + Scan for newly installed custom widget plugins. + Prohledat kvůli nově nainstalovaným přídavným modulům s uživatelsky stanovenými prvky. + + + + Qt Designer couldn't find any plugins + Programu Qt Designer se nepodařilo najít jakékoli přídavné moduly + + + + Qt Designer found the following plugins + Programu Qt Designer se podařilo najít následující přídavné moduly + + + + New custom widget plugins have been found. + Byly nalezeny nové přídavné moduly s uživatelsky stanovenými prvky. + + + + qdesigner_internal::PreviewActionGroup + + + %1 Style + %1-Styl + + + + qdesigner_internal::PreviewConfigurationWidget + + + Default + Výchozí + + + + None + Žádný + + + + Browse... + Procházet... + + + + Load Custom Device Skin + Nahrát uživatelsky stanovený vzhled zařízení + + + + All QVFB Skins (*.%1) + Všechny vzhledy QVFB (*.%1) + + + + %1 - Duplicate Skin + %1 - Zdvojit vzhled + + + + The skin '%1' already exists. + Vzhled '%1' již existuje. + + + + %1 - Error + %1 - Chyba + + + + %1 is not a valid skin directory: +%2 + %1 není platným adresářem pro vzhled: +%2 + + + + qdesigner_internal::PreviewConfigurationWidget::PreviewConfigurationWidgetPrivate + + Load Custom Device Skin + Nahrát uživatelsky stanovený vzhled zařízení + + + All QVFB Skins (*.%1) + Všechny vzhledy QVFB (*.%1) + + + %1 - Duplicate Skin + %1 - Vzhled již existuje + + + The skin '%1' already exists. + Vzhled '%1' již existuje. + + + %1 - Error + %1 - Chyba + + + %1 is not a valid skin directory: +%2 + %1 není platným adresářem vzhledu: +%2 + + + + qdesigner_internal::PreviewDeviceSkin + + + &Portrait + Formát na &výšku + + + + Landscape (&CCW) + Rotate form preview counter-clockwise + Formát na šířku (&proti směru otáčení hodinových ručiček) + + + + &Landscape (CW) + Rotate form preview clockwise + Formát na šířku (po směru &otáčení hodinových ručiček) + + + + &Close + &Zavřít + + + + qdesigner_internal::PreviewManager + + + %1 - [Preview] + %1 - [Náhled] + + + + qdesigner_internal::PreviewMdiArea + + + The moose in the noose +ate the goose who was loose. + Palette editor background + Los v chomoutu snědl husu, +která byla volně puštěná. + + + + qdesigner_internal::PreviewWidget + + + Preview Window + Náhledové okno + + + + LineEdit + Úprava čáry + + + + ComboBox + Skupinová krabice + + + + PushButton + Tlačítko na postrčení + + + + ButtonGroup2 + Skupina tlačítek 2 + + + + CheckBox1 + Zaškrtnutelné políčko 1 + + + + CheckBox2 + Zaškrtnutelné políčko 2 + + + + ButtonGroup + Skupina tlačítek + + + + RadioButton1 + Rozhlasové tlačítko 1 + + + + RadioButton2 + Rozhlasové tlačítko 2 + + + + RadioButton3 + Rozhlasové tlačítko 3 + + + + qdesigner_internal::PromotionModel + + + Name + Název + + + + Header file + Hlavičkový soubor + + + + Global include + Celkový hlavičkový soubor + + + + Usage + Použití + + + + qdesigner_internal::PromotionTaskMenu + + + Promoted widgets... + Uživatelsky stanovené prvky... + + + + Promote to ... + Stanovit jako zástupný symbol pro uživatelsky stanovenou třídu... + + + + Promote to + Stanovit jako zástupný symbol pro uživatelsky stanovenou třídu + + + + Demote to %1 + Odstranit zástupný symbol pro uživatelsky stanovenou třídu a přeměnit na %1 + + + + Change signals/slots... + Změnit signály/zdířky... + + + + qdesigner_internal::PropertyEditor + + + Add Dynamic Property... + Přidat dynamickou vlastnost... + + + + Remove Dynamic Property + Odstranit dynamickou vlastnost + + + + Tree View + Stromový pohled + + + + Drop Down Button View + Podrobný pohled + + + + Object: %1 +Class: %2 + Předmět: %1 +Třída: %2 + + + + Sorting + Třídění + + + + Color Groups + Barevné zdůraznění + + + + Configure Property Editor + Nastavit editor vlastností + + + + String... + Řetězec znaků... + + + + Bool... + Booleánská hodnota... + + + + Other... + Jiný typ... + + + + qdesigner_internal::PropertyLineEdit + + + Insert line break + Vložit zalomení řádku + + + + qdesigner_internal::QDesignerPromotionDialog + + + Promoted Widgets + Zástupný symbol pro uživatelsky stanovené prvky + + + + Promoted Classes + Zástupný symbol pro uživatelsky stanovené třídy + + + + Promote + Používat + + + + %1 - Error + %1 - Chyba + + + + Change signals/slots... + Změnit signály/zdířky... + + + + qdesigner_internal::QDesignerResource + + + Loading qrc file + Nahrává se zdrojový soubor + + + + The specified qrc file <p><b>%1</b></p><p>could not be found. Do you want to update the file location?</p> + Zadaný zdrojový soubor <p><b>%1</b></p><p> se nepodařilo najít. Chcete zadat novou cestu k umístění souboru?</p> + + + + New location for %1 + Nové umístění %1 + + + + Resource files (*.qrc) + Zdrojové soubory (*.qrc) + + + + qdesigner_internal::QDesignerTaskMenu + + + Change objectName... + Změnit název předmětu... + + + + Change toolTip... + Změnit radu k nástroji... + + + + Change whatsThis... + Změnit "A co je toto"... + + + + Change styleSheet... + Změnit předlohový list... + + + + Create Menu Bar + Vytvořit nabídkový pruh + + + + Add Tool Bar + Přidat nástrojový pruh + + + + Create Status Bar + Vytvořit stavový pruh + + + + Remove Status Bar + Odstranit stavový pruh + + + + Change script... + Změnit skript... + + + + Change signals/slots... + Změnit signály/zdířky... + + + + Go to slot... + Jít na zdířku... + + + + no signals available + Nejsou dostupné žádné signály + + + + Set size constraint on %n widget(s) + + Nastavit omezení velikosti u jednoho prvku + Nastavit omezení velikosti u %n prvků + Nastavit omezení velikosti u %n prvků + + + + + Size Constraints + Omezení velikosti + + + + Set Minimum Width + Nastavit nejmenší šířku + + + + Set Minimum Height + Nastavit nejmenší výšku + + + + Set Minimum Size + Nastavit nejmenší velikost + + + + Set Maximum Width + Nastavit největší šířku + + + + Set Maximum Height + Nastavit největší výšku + + + + Set Maximum Size + Nastavit největší velikost + + + + Edit ToolTip + Upravit radu k nástroji + + + + Edit WhatsThis + Upravit "A co je toto" + + + + qdesigner_internal::QDesignerWidgetBox + + + + Unexpected element <%1> + Neplatný prvek <%1> + + + + A parse error occurred at line %1, column %2 of the XML code specified for the widget %3: %4 +%5 + Kód XML pro prvek %3 obsahuje chybu na řádku %1, sloupec %2:%4: +%5 + + + + The XML code specified for the widget %1 does not contain any widget elements. +%2 + Kód XML pro prvek %1 neobsahuje prvky. +%2 + + + + An error has been encountered at line %1 of %2: %3 + Chyba na řádku %1 z %2: %3 + + + + Unexpected element <%1> encountered when parsing for <widget> or <ui> + Na místě očekávaného <prvek>- nebo prvku <ui> byl nalezen <%1> + + + + Unexpected end of file encountered when parsing widgets. + Při čtení nastavení krabice s prvky se vyskytl předčasný konec souboru. + + + + A widget element could not be found. + Nepodařilo se najít prvek. + + + + qdesigner_internal::QtGradientStopsController + + + H + H + + + + S + S + + + + V + V + + + + + Hue + Barevný odstín + + + + Sat + Sytost + + + + Val + Hodnota + + + + Saturation + Sytost + + + + Value + Hodnota + + + + R + R + + + + G + G + + + + B + B + + + + Red + Červená + + + + Green + Zelená + + + + Blue + Modrá + + + + qdesigner_internal::RichTextEditorDialog + + + Edit text + Upravit text + + + + &OK + &OK + + + + &Cancel + &Zrušit + + + + Rich Text + Upravovatelný text + + + + Source + Zdroj + + + + qdesigner_internal::RichTextEditorToolBar + + + Bold + Tučné + + + + CTRL+B + CTRL+F + + + + Italic + Kurzíva + + + + CTRL+I + CTRL+K + + + + Underline + Podtržení + + + + CTRL+U + CTRL+U + + + + Left Align + Zarovnat k levému okraji + + + + Center + Zarovnat na střed + + + + Right Align + Zarovnat k pravému okraji + + + + Justify + Zarovnat do bloku + + + + Superscript + Horní index + + + + Subscript + Dolní index + + + + Insert &Link + Vložit &odkaz + + + + Insert &Image + Vložit &obrázek + + + + qdesigner_internal::ScriptDialog + + + Edit script + Upravit skript + + + + Syntax error + Chyba ve skladbě + + + + <html>Enter a Qt Script snippet to be executed while loading the form.<br>The widget and its children are accessible via the variables <i>widget</i> and <i>childWidgets</i>, respectively. + <html>Zadejte kousek Qt skriptu k provedení v průběhu nahrávání formuláře.<br>Prvek a jemu podřízené prvky jsou přístupné prostřednictvím proměnných <i>widget</i> und <i>childWidgets</i>. + + + + qdesigner_internal::ScriptErrorDialog + + + Script errors + Chyby ve skriptu + + + + qdesigner_internal::SignalSlotDialog + + + There is already a slot with the signature '%1'. + Již existuje zdířka s podpisem '%1'. + + + + There is already a signal with the signature '%1'. + Již existuje signál s podpisem '%1'. + + + + %1 - Duplicate Signature + %1 - Podpis již existuje + + + + + Signals/Slots of %1 + Signály/Zdířky od %1 + + + + qdesigner_internal::SignalSlotEditorPlugin + + + Edit Signals/Slots + Upravit signály/zdířky + + + + F4 + F4 + + + + qdesigner_internal::SignalSlotEditorTool + + + Edit Signals/Slots + Upravit signály/zdířky + + + + qdesigner_internal::StatusBarTaskMenu + + + Remove + Odstranit + + + + qdesigner_internal::StringListEditorButton + + + Change String List + Změnit seznamy s řetězci znaků + + + + qdesigner_internal::StyleSheetEditorDialog + + + Edit Style Sheet + Upravit předlohový list + + + + + Valid Style Sheet + Platný předlohový list + + + + Invalid Style Sheet + Neplatný předlohový list + + + + Add Resource... + Přidat zdroj... + + + + Add Gradient... + Přidat přechod... + + + + Add Color... + Přidat barvu... + + + + Add Font... + Přidat písmo... + + + + qdesigner_internal::TabOrderEditor + + + Start from Here + Začít znovu odtud + + + + Restart + Začít znovu + + + + Tab Order List... + Seznam s pořadím tabulátorů... + + + + Tab Order List + Seznam s pořadím tabulátorů + + + + Tab Order + Pořadí tabulátorů + + + + qdesigner_internal::TabOrderEditorPlugin + + + Edit Tab Order + Upravit pořadí tabulátorů + + + + qdesigner_internal::TabOrderEditorTool + + + Edit Tab Order + Upravit pořadí tabulátorů + + + + qdesigner_internal::TableWidgetEditor + + + New Column + Nový sloupec + + + + New Row + Nový řádek + + + + &Columns + &Sloupce + + + + &Rows + &Řádky + + + + Properties &<< + Vlastnosti &<< + + + + + Properties &>> + Vlastnosti &>> + + + + Edit Table Widget + Upravit prvek s tabulkou + + + + &Items + &Prvky + + + + Table Items + Prvky tabulek + + + + qdesigner_internal::TableWidgetTaskMenu + + + Edit Items... + Upravit prvky... + + + + qdesigner_internal::TemplateOptionsWidget + + + Pick a directory to save templates in + Vyberte adresář pro ukládání předloh + + + + Form + Formulář + + + + Additional Template Paths + Dodatečné adresáře pro předlohy + + + + ... + ... + + + + qdesigner_internal::TextEditTaskMenu + + + Change HTML... + Změnit HTML... + + + + Edit HTML + Upravit HTML + + + + Edit Text + Upravit text + + + + Change Plain Text... + Změnit prostý text... + + + + qdesigner_internal::TextEditor + + + Choose Resource... + Vybrat zdroj... + + + + Choose File... + Vybrat soubor... + + + + Choose a File + Vybrat soubor + + + + ... + ... + + + + qdesigner_internal::ToolBarEventFilter + + + Insert Separator + Vložit oddělovač + + + + Remove action '%1' + Odstranit činnost '%1' + + + + Remove Toolbar '%1' + Odstranit nástrojový pruh '%1' + + + + Insert Separator before '%1' + Vložit oddělovač před '%1' + + + + Append Separator + Připojit oddělovač + + + + qdesigner_internal::TreeWidgetEditor + + + &Columns + &Sloupce + + + + Per column properties + Vlastnosti sloupců + + + + Common properties + Společné vlastnosti + + + + + New Item + Nový prvek + + + + Properties &<< + Vlastnosti &<< + + + + + Properties &>> + Vlastnosti &>> + + + + New Column + Nový sloupec + + + + Edit Tree Widget + Upravit stromový prvek + + + + &Items + &Prvky + + + + Tree Items + Stromové prvky + + + + + New Subitem + Nový podřízený prvek + + + + New &Subitem + Nový po&dřízený prvek + + + + Delete Item + Smazat prvek + + + + Move Item Left (before Parent Item) + Posunout prvek doleva (před nadřízený prvek) + + + + L + L + + + + Move Item Right (as a First Subitem of the Next Sibling Item) + Posunout prvek doprava (jako první podřízený prvek dalšího rovnocenného prvku) + + + + R + R + + + + Move Item Up + Posunout prvek nahoru + + + + U + U + + + + Move Item Down + Posunout prvek dolů + + + + D + D + + + + 1 + 1 + + + + &New + &Nový + + + + &Delete + &Smazat + + + + qdesigner_internal::TreeWidgetTaskMenu + + + Edit Items... + Upravit prvky... + + + + qdesigner_internal::WidgetBox + + + Warning: Widget creation failed in the widget box. This could be caused by invalid custom widget XML. + Upozornění: Vytvoření prvku v krabici s prvky se nezdařilo. Mohlo by to být zapříčiněno chybným XML kódem uživatelsky stanoveného prvku. + + + + qdesigner_internal::WidgetBoxTreeWidget + + + Scratchpad + Skladování + + + + Custom Widgets + Uživatelsky stanovené prvky + + + + Expand all + Rozdělat vše + + + + Collapse all + Složit vše + + + + List View + Pohled se seznamem + + + + Icon View + Pohled s ikonami + + + + Remove + Odstranit + + + + Edit name + Upravit název + + + + qdesigner_internal::WidgetDataBase + + + A custom widget plugin whose class name (%1) matches that of an existing class has been found. + Byl nalezen přídavný modul, který obsahuje uživatelsky stanovený prvek, jehož název pro třídu (%1) odpovídá stávající třídě. + + + + qdesigner_internal::WidgetEditorTool + + + Edit Widgets + Upravit prvky + + + + qdesigner_internal::WidgetFactory + + + The custom widget factory registered for widgets of class %1 returned 0. + Závod pro uživatelsky stanovené prvky třídy %1 vrátil zpět 0. + + + + A class name mismatch occurred when creating a widget using the custom widget factory registered for widgets of class %1. It returned a widget of class %2. + Při vytváření prvku byly zjištěny odporující si názvy tříd: Závod pro uživatelsky stanovené prvky třídy %1 vrátil zpět prvek třídy %2. + + + + The current page of the container '%1' (%2) could not be determined while creating a layout.This indicates an inconsistency in the ui-file, probably a layout being constructed on a container widget. + Při vytváření rozvržení se nepodařilo určit nynější stránku kontejneru '%1' (%2). To naznačuje jistou nesrovnalost v souboru s rozhraním; pravděpodobně bylo rozvržení postaveno přímo na prvku kontejneru. + + + + Attempt to add a layout to a widget '%1' (%2) which already has an unmanaged layout of type %3. +This indicates an inconsistency in the ui-file. + Pokus o přidání rozvržení na prvek '%1' (%2), který již má nespravované rozvržení typu %3. To naznačuje jistou nesrovnalost v souboru s rozhraním. + + + + Cannot create style '%1'. + Nepodařilo se vytvořit styl '%1'. + + + + %1 Widget + %1 prvek + + + + qdesigner_internal::WizardContainerWidgetTaskMenu + + + Next + Další + + + + Back + Zpět + + + + qdesigner_internal::ZoomMenu + + + %1 % + Zoom factor + %1 % + + + + qdesigner_internal::ZoomablePreviewDeviceSkin + + + &Zoom + &Zvětšit + + + diff --git a/translations/linguist_cs.ts b/translations/linguist_cs.ts new file mode 100644 index 0000000..32905c9 --- /dev/null +++ b/translations/linguist_cs.ts @@ -0,0 +1,2023 @@ + + + + + AboutDialog + + + Qt Linguist + Qt Linguist + + + + BatchTranslationDialog + + + Batch Translation of '%1' - Qt Linguist + Automatický překlad '%1' - Qt Linguist + + + + Searching, please wait... + Hledá se, čekejte, prosím... + + + + &Cancel + &Zrušit + + + + Linguist batch translator + Automatický překladatel (Linguist) + + + + Batch translated %n entries + + 1 záznam byl automaticky přeložen + %n záznamy byly automaticky přeloženy + %n záznamů bylo automaticky přeloženo + + + + + Qt Linguist - Batch Translation + Qt Linguist - Automatický překlad + + + + Options + Volby + + + + Set translated entries to finished + Označit přeložené záznamy jako hotové + + + + Retranslate entries with existing translation + Znovu přeložit záznamy s již existujícím překladem + + + + Translate also finished entries + Přeložit i hotové záznamy + + + + Phrase book preference + Slovníky + + + + Move up + Posunout nahoru + + + + Move down + Posunout dolů + + + + &Run + &Provést + + + + Cancel + Zrušit + + + + Note that the modified entries will be reset to unfinished if 'Set translated entries to finished' above is unchecked + Všimněte si, že změněné záznamy budou znovu nastaveny na nevyřízené, pokud není zapnuto nahoře zmíněné nastavení 'Označit přeložené záznamy jako hotové' + + + + The batch translator will search through the selected phrase books in the order given above + Automatický překladatel bude prohledávat vybrané slovníky v pořadí uvedeném výše + + + + DataModel + + + <qt>Duplicate messages found in '%1': + <qt>Vícekrát existující hlášení v '%1': + + + + <p>[more duplicates omitted] + <p>[vypuštěny další vícekrát existující zprávy] + + + + <p>* Context: %1<br>* Source: %2 + <p>* Souvislosti: %1<br>* Zdroj: %2 + + + + <br>* Comment: %3 + <br>* Poznámka: %3 + + + + Linguist does not know the plural rules for '%1'. +Will assume a single universal form. + Pravidla pro tvoření množného čísla (plurálu) jazyka '%1' nejsou v Linguistu stanovena. +Pracuje se s jednoduchým všeobecným tvarem. + + + + Cannot create '%2': %1 + '%2' nemůže být vytvořen: %1 + + + + Universal Form + Všeobecný tvar + + + + ErrorsView + + + Accelerator possibly superfluous in translation. + V textu překladu je možná přebytečný akcelerátor. + + + + Accelerator possibly missing in translation. + V textu překladu možná chybí akcelerátor. + + + + Translation does not end with the same punctuation as the source text. + Interpunkční znaménko na konci textu překladu se liší od interpunkce zdrojového textu. + + + + A phrase book suggestion for '%1' was ignored. + Na návrh slovníku pro '%1' nebyl brán zřetel. + + + + Translation does not refer to the same place markers as in the source text. + Držitelé místa v textu překladu a ve zdrojovém textu se liší. + + + + Translation does not contain the necessary %n place marker. + Potřebný držitel místa (%n) v překladu chybí. + + + + Unknown error + Neznámá chyba + + + + FindDialog + + + This window allows you to search for some text in the translation source file. + Toto okno vám umožňuje hledání textu ve zdrojovém souboru s překladem. + + + + Type in the text to search for. + Zadejte text, který se má hledat. + + + + Options + Volby + + + + Source texts are searched when checked. + Když je zapnuto, hledá se ve zdrojových textech. + + + + Translations are searched when checked. + Když je zapnuto, hledá se v překladech. + + + + Texts such as 'TeX' and 'tex' are considered as different when checked. + Když je zapnuto, texty jako 'TeX' a 'tex' se považují za rozdílné. + + + + Comments and contexts are searched when checked. + Když je zapnuto, prohledávají se poznámky a souvislosti. + + + + Find + Hledat + + + + &Find what: + &Vzor hledání: + + + + &Source texts + &Zdrojové texty + + + + &Translations + &Překlady + + + + &Match case + &Dbát na psaní velkých a malých písmen + + + + &Comments + &Poznámky + + + + Ignore &accelerators + Nedbat na &akcelerátory + + + + Click here to find the next occurrence of the text you typed in. + Klepněte sem pro skok k dalšímu výskytu hledáného textu. + + + + Find Next + Hledat dál + + + + Click here to close this window. + Klepněte sem pro zavření tohoto okna. + + + + Cancel + Zrušit + + + + + Choose Edit|Find from the menu bar or press Ctrl+F to pop up the Find dialog + + + + + FormMultiWidget + + + Alt+Delete + translate, but don't change + Alt+Delete + + + + Shift+Alt+Insert + translate, but don't change + Shift+Alt+Insert + + + + Alt+Insert + translate, but don't change + Alt+Insert + + + + Confirmation - Qt Linguist + Potvrzení - Qt Linguist + + + + Delete non-empty length variant? + Smazat vyplněnou obměnu délky? + + + + LRelease + + + Dropped %n message(s) which had no ID. + + Byl smazán záznam bez identifikátoru. + Byly smazány %n záznamy bez identifikátoru. + Byly smazány %n záznamy bez identifikátoru. + + + + + Excess context/disambiguation dropped from %n message(s). + + U jednoho záznamu byla odstraněna přebytečná souvislost případně přebytečné zabránění dvojznačnosti (přebytečná informace k rozhodování). + U %n záznamů byla odstraněna přebytečná souvislost případně přebytečné zabránění dvojznačnosti (přebytečná informace k rozhodování). + U %n záznamů byla odstraněna přebytečná souvislost případně přebytečné zabránění dvojznačnosti (přebytečná informace k rozhodování). + + + + + Generated %n translation(s) (%1 finished and %2 unfinished) + + + Byl vytvořen jeden překlad (%1 dokončeno %2 nedokončeno) + + Byly vytvořeny %n překlady (%1 dokončeno %2 nedokončeno) + + Byly vytvořeny %n překlady (%1 dokončeno %2 nedokončeno) + + + + + + Ignored %n untranslated source text(s) + + + Na jeden nepřeložený text nebyl brán zřetel + + na %n nepřeložené texty nebyl brán zřetel + + na %n nepřeložené texty nebyl brán zřetel + + + + + + MainWindow + + + MainWindow + Hlavní okno + + + + &Phrases + &Slovníky + + + + &Close Phrase Book + &Zavřít slovník + + + + &Edit Phrase Book + &Upravit slovník + + + + &Print Phrase Book + &Vytisknout slovník + + + + V&alidation + &Schválení + + + + &View + &Pohled + + + + Vie&ws + Po&hledy + + + + &Toolbars + &Nástrojové lišty + + + + &Help + &Nápověda + + + + &Translation + &Překlad + + + + &File + &Soubor + + + + &Edit + Ú&pravy + + + + &Open... + &Otevřít... + + + + Open a Qt translation source file (TS file) for editing + Otevřít Qt zdrojový soubor s překladem (soubor TS) pro úpravy + + + + Ctrl+O + Ctrl+O + + + + E&xit + &Ukončit + + + + Close this window and exit. + Toto okno zavřít a ukončit. + + + + Ctrl+Q + Ctrl+Q + + + + + &Save + &Uložit + + + + Save changes made to this Qt translation source file + Uložit změny provedené v tomto Qt zdrojovém souboru s překladem + + + + Move to the previous unfinished item. + Jít na předchozí nevyřízený záznam. + + + + Move to the next unfinished item. + Jít na další nevyřízený záznam. + + + + Move to the previous item. + Jít na předchozí záznam. + + + + Move to the next item. + Jít na další záznam. + + + + Mark this item as done and move to the next unfinished item. + Označit tento záznam jako hotový a jít na další nevyřízený záznam. + + + + Copy from source text + Převzít zdrojový text + + + + Toggle the validity check of accelerators, i.e. whether the number of ampersands in the source and translation text is the same. If the check fails, a message is shown in the warnings window. + Zapnout/Vypnout ověření akcelerátorů, to znamená, zda se shoduje počet znaků obchodnického -A (&) ve zdrojovém textu a v textu překladu. V případě neúspěchu se v okně s upozorněními ukáže zpráva s varováním. + + + + Toggle the validity check of ending punctuation. If the check fails, a message is shown in the warnings window. + Zapnout/Vypnout ověření znaku na konci věty na konci textu. V případě neúspěchu se v okně s upozorněními ukáže zpráva s varováním. + + + + Toggle checking that phrase suggestions are used. If the check fails, a message is shown in the warnings window. + Zapnout/Vypnout ověření použití návrhů slovníku. V případě neúspěchu se v okně s upozorněními ukáže zpráva s varováním. + + + + Toggle the validity check of place markers, i.e. whether %1, %2, ... are used consistently in the source text and translation text. If the check fails, a message is shown in the warnings window. + Zapnout/Vypnout ověření držitelů místa, to znamená, zda se shoduje používání %1, %2,... ve zdrojovém textu a v textu překladu. V případě neúspěchu se v okně s upozorněními ukáže zpráva s varováním. + + + + Open Read-O&nly... + Otevřít pouze &pro čtení... + + + + &Save All + &Uložit vše + + + + Ctrl+S + Ctrl+S + + + + + + Save &As... + Uložit &jako... + + + + Save As... + Uložit jako... + + + + Save changes made to this Qt translation source file into a new file. + Uložit změny provedené v tomto Qt zdrojovém souboru s překladem do nového souboru. + + + + &Release + &Vydat + + + + Create a Qt message file suitable for released applications from the current message file. + Vytvořit Qt soubor se zprávami vhodný pro vydané aplikace (soubor QM) ze současného souboru s překladem. + + + + &Print... + &Tisk... + + + + Ctrl+P + Ctrl+P + + + + &Undo + &Zpět + + + + Recently Opened &Files + Naposledy upravované sou&bory + + + + Save + Uložit + + + + Print a list of all the translation units in the current translation source file. + Vytisknout seznam se všemi překladovými jednotkami v současném zdrojovém souboru s překladem. + + + + Undo the last editing operation performed on the current translation. + Poslední změnu provedenou v současném překladu vrátit zpět. + + + + Ctrl+Z + Ctrl+Z + + + + &Redo + &Znovu + + + + Redo an undone editing operation performed on the translation. + Poslední zpět vrácenou změnu v překladu provést znovu. + + + + Ctrl+Y + Ctrl+Y + + + + Cu&t + &Vyjmout + + + + Copy the selected translation text to the clipboard and deletes it. + Zkopírovat vybraný text s překladem do schránky a smazat jej. + + + + Ctrl+X + Ctrl+X + + + + &Copy + &Kopírovat + + + + Copy the selected translation text to the clipboard. + Zkopírovat vybraný text s překladem do schránky. + + + + Ctrl+C + Ctrl+C + + + + &Paste + &Vložit + + + + Paste the clipboard text into the translation. + Vložit text ze schránky do překladu. + + + + Ctrl+V + Ctrl+V + + + + Select &All + Vybrat &vše + + + + Select the whole translation text. + Vybrat celý text s překladem. + + + + Ctrl+A + Ctrl+A + + + + &Find... + &Hledat... + + + + Search for some text in the translation source file. + Hledat text v souboru s překladem. + + + + Ctrl+F + Ctrl+F + + + + Find &Next + Hledat &dál + + + + Continue the search where it was left. + Pokračovat v hledání. + + + + F3 + F3 + + + + &Prev Unfinished + &Předchozí nevyřízený + + + + Close + Zavřít + + + + &Close All + &Zavřít vše + + + + Ctrl+W + Ctrl+W + + + + Ctrl+K + Ctrl+K + + + + &Next Unfinished + &Další nevyřízený + + + + P&rev + Před&chozí + + + + Ctrl+Shift+K + Ctrl+Shift+K + + + + Ne&xt + Da&lší + + + + &Done and Next + &Hotovo a další + + + + Copies the source text into the translation field. + Kopíruje zdrojový text do pole s překladem. + + + + Ctrl+B + Ctrl+B + + + + &Accelerators + &Akcelerátory + + + + &Ending Punctuation + &Interpunkce na konci + + + + &Phrase matches + &Slovník + + + + Place &Marker Matches + Držitel &místa + + + + &New Phrase Book... + &Nový slovník... + + + + Create a new phrase book. + Vytvořit nový slovník. + + + + Ctrl+N + Ctrl+N + + + + &Open Phrase Book... + &Otevřít slovník... + + + + Open a phrase book to assist translation. + Otevřít slovník kvůli podpoře při překladu. + + + + Ctrl+H + Ctrl+H + + + + &Reset Sorting + Řazení &vrátit zpět + + + + Sort the items back in the same order as in the message file. + Seřadit záznamy ve stejném pořadí jako v původním souboru s překladem. + + + + &Display guesses + Ukázat &návrhy + + + + Set whether or not to display translation guesses. + Zapnout/Vypnout zobrazení návrhů k překladu. + + + + &Statistics + S&tatistika + + + + Display translation statistics. + Ukázat statistiku k překladu. + + + + &Manual + &Příručka + + + + F1 + F1 + + + + About Qt Linguist + O Qt Linguistu + + + + About Qt + O Qt + + + + Display information about the Qt toolkit by Trolltech. + Zobrazit informace o sadě nástrojů Qt od Trolltechu. + + + + &What's This? + &Copak je asi toto? + + + + What's This? + Copak je asi toto? + + + + Enter What's This? mode. + Zapnout režim "Copak je asi toto?". + + + + Shift+F1 + Shift+F1 + + + + &Search And Translate... + Hledat a &překládat... + + + + Replace the translation on all entries that matches the search source text. + Nahradit překlad u všech záznamů, které odpovídají hledanému textu. + + + + + &Batch Translation... + &Automatický překlad... + + + + Batch translate all entries using the information in the phrase books. + Automaticky přeložit všechny záznamy s pomocí slovníků. + + + + + + Release As... + Vydat jako... + + + + + This is the application's main window. + + + + + Source text + Zdrojový text + + + + + Index + Rejstřík + + + + + Context + Souvislosti + + + + Items + Záznamy + + + + This panel lists the source contexts. + V tomto panelu jsou ukazovány souvislosti. + + + + Strings + Řetězce + + + + Phrases and guesses + Slovník a návrhy + + + + Sources and Forms + Zdrojové soubory a formuláře + + + + Warnings + Upozornění + + + + MOD + status bar: file(s) modified + Změněno + + + + Loading... + Nahrává se... + + + + + Loading File - Qt Linguist + Nahrává se soubor - Qt Linguist + + + + The file '%1' does not seem to be related to the currently open file(s) '%2'. + +Close the open file(s) first? + Nezdá se, že by soubor '%1' souvisel s již otevřenými soubory '%2'. + +Zavřít nejprve již otevřený soubor(y)? + + + + The file '%1' does not seem to be related to the file '%2' which is being loaded as well. + +Skip loading the first named file? + Nezdá se, že by soubor '%1' souvisel s již otevřeným souborem '%2', který je rovněž nahrán. + +Přeskočit nahrávání prve jmenovaného souboru? + + + + %n translation unit(s) loaded. + + Nahrána jedna překladová jednotka. + Nahrány %n překladové jednotky. + Nahrány %n překladové jednotky. + + + + + Related files (%1);; + Příbuzné soubory (%1);; + + + + Open Translation Files + Otevřít soubory s překlady + + + + + File saved. + Soubor uložen. + + + + + + Release + Vydat + + + + Qt message files for released applications (*.qm) +All files (*) + Qt soubory se zprávami pro vydané aplikace (*.qm) +Všechny soubory (*) + + + + + File created. + Soubor vytvořen. + + + + + Printing... + Tisk... + + + + Context: %1 + Souvislosti: %1 + + + + finished + vyřízeno + + + + unresolved + nevyřešeno + + + + obsolete + zastaralé + + + + + Printing... (page %1) + Tisk... (strana %1) + + + + + Printing completed + Tisk dokončen + + + + + Printing aborted + Tisk zrušen + + + + Search wrapped. + Hledání začíná odshora. + + + + + + + + + + + + + Qt Linguist + Qt Linguist + + + + + Cannot find the string '%1'. + Nelze najít řetězec '%1'. + + + + Search And Translate in '%1' - Qt Linguist + Hledat a překládat v '%1' - Qt Linguist + + + + + + Translate - Qt Linguist + Překlad - Qt Linguist + + + + Translated %n entry(s) + + Přeložen jeden záznam + Přeloženy %n záznamy + Přeloženy %n záznamy + + + + + No more occurrences of '%1'. Start over? + Žádné další výskyty '%1'. Začít znovu? + + + + Create New Phrase Book + Vytvořit nový slovník + + + + Qt phrase books (*.qph) +All files (*) + Slovníky Qt (*.qph) +Všechny soubory (*) + + + + Phrase book created. + Slovník vytvořen. + + + + Open Phrase Book + Otevřít slovník + + + + Qt phrase books (*.qph);;All files (*) + Slovníky Qt (*.qph);;Všechny soubory (*) + + + + %n phrase(s) loaded. + + Nahrán jeden záznam ve slovníku. + Nahrány %n záznamy ve slovníku. + Nahrány %n záznamy ve slovníku. + + + + + + + Add to phrase book + Přidat do slovníku + + + + No appropriate phrasebook found. + Nelze nalézt žádný příslušný slovník. + + + + Adding entry to phrasebook %1 + Přidává se záznam do slovníku %1 + + + + Select phrase book to add to + Do kterého slovníku se má záznam přidat + + + + Unable to launch Qt Assistant (%1) + Qt Assistant nelze spustit (%1) + + + + Version %1 + Verze %1 + + + + <center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist is a tool for adding translations to Qt applications.</p><p>Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). + <center><img src=":/images/splash.png"/></img><p>%1</p></center><p>Qt Linguist je nástrojem pro přidávání překladů do aplikací Qt.</p><p>Copyright (C) 2009 Nokia Corporation a/nebo její dceřinná společnost(i). + + + + Do you want to save the modified files? + Chcete uložit změněné soubory? + + + + Do you want to save '%1'? + Chcete uložit '%1'? + + + + Qt Linguist[*] + Qt Linguist[*] + + + + %1[*] - Qt Linguist + %1[*] - Qt Linguist + + + + + No untranslated translation units left. + Nezbyly žádné nepřeložené překladové jednotky. + + + + &Window + &Okno + + + + Minimize + Zmenšit + + + + Ctrl+M + Ctrl+M + + + + Display the manual for %1. + Zobrazit příručku k %1. + + + + Display information about %1. + Zobrazit údaje o %1. + + + + &Save '%1' + &Uložit '%1' + + + + Save '%1' &As... + '%1' uložit &jako... + + + + Release '%1' + Vydat '%1' + + + + Release '%1' As... + '%1' vydat jako... + + + + &Close '%1' + &Zavřít '%1' + + + + + &Close + &Zavřít + + + + Save All + Uložit vše + + + + + &Release All + &Vydat vše + + + + Close All + Zavřít vše + + + + Translation File &Settings for '%1'... + Nastavení &souboru s překladem pro '%1' ... + + + + &Batch Translation of '%1'... + &Automatický překlad '%1' ... + + + + Search And &Translate in '%1'... + Hledat a &překládat v '%1' ... + + + + Search And &Translate... + Hledat a &překládat... + + + + + File + Soubor + + + + + Edit + Úpravy + + + + + Translation + Překlad + + + + + Validation + Schválení + + + + + Help + Nápověda + + + + Cannot read from phrase book '%1'. + Nelze číst ze slovníku '%1'. + + + + Close this phrase book. + Tento slovník zavřít. + + + + Enables you to add, modify, or delete entries in this phrase book. + Umožní vložit, měnit nebo odstranit záznamy z tohoto slovníku. + + + + Print the entries in this phrase book. + Vytisknout záznamy z tohoto slovníku. + + + + Cannot create phrase book '%1'. + Nelze vytvořit slovník '%1'. + + + + Do you want to save phrase book '%1'? + Chcete uložit slovník '%1'? + + + + All + Vše + + + + Open/Refresh Form &Preview + Otevřít/Obnovit &náhled na formulář + + + + Form Preview Tool + Nástroj pro náhled na formulář + + + + F5 + F5 + + + + + Translation File &Settings... + &Nastavení souboru s překladem... + + + + &Add to Phrase Book + &Přidat do slovníku + + + + Ctrl+T + Ctrl+T + + + + Ctrl+J + Ctrl+J + + + + Ctrl+Shift+J + Ctrl+Shift+J + + + + Previous unfinished item + Předchozí nevyřízený záznam + + + + Next unfinished item + Další nevyřízený záznam + + + + Move to previous item + Jít na předchozí záznam + + + + Next item + Další záznam + + + + Mark item as done and move to the next unfinished item + Označit záznam jako vyřízený a jít na další nevyřízený záznam + + + + Copies the source text into the translation field + Kopíruje zdrojový text do pole s překladem + + + + Toggle the validity check of accelerators + Zapnout/Vypnout ověření akcelerátorů + + + + Toggle the validity check of ending punctuation + Zapnout/Vypnout ověření znaku na konci věty na konci textu + + + + Toggle checking that phrase suggestions are used + Zapnout/Vypnout ověření použití záznamů ze slovníku + + + + Toggle the validity check of place markers + Zapnout/Vypnout ověření držitelů místa + + + + Create a Qt message file suitable for released applications from the current message file. The filename will automatically be determined from the name of the TS file. + Vytvořit z nynějšího překladového souboru soubor s hlášeními Qt vhodný pro vydané aplikace. Název souboru bude automaticky odvozen z názvu souboru TS. + + + + Length Variants + Varianty délky + + + + MessageEditor + + + + This is the right panel of the main window. + + + + + Russian + Ruský + + + + German + Německý + + + + Japanese + Japonský + + + + French + Francouzský + + + + Polish + Polský + + + + Chinese + Čínský + + + + This whole panel allows you to view and edit the translation of some source text. + Celý tento panel umožňuje zobrazení a úpravy překladu zdrojového textu. + + + + Source text + Zdrojový text + + + + This area shows the source text. + Tato oblast ukazuje zdrojový text. + + + + Source text (Plural) + Zdrojový text (Plural) + + + + This area shows the plural form of the source text. + Tato oblast ukazuje množné číslo zdrojového textu. + + + + Developer comments + Vývojářovy poznámky + + + + This area shows a comment that may guide you, and the context in which the text occurs. + Tato oblast ukazuje případn poznámky, jež vás mohou vést, a souvislosti, v nichž se text vyskytuje. + + + + Here you can enter comments for your own use. They have no effect on the translated applications. + Sem můžete vepsat poznámky určené pro vaše vlastní použití. Na překlad nemají žádný vliv. + + + + %1 translation (%2) + Překlad %1 (%2) + + + + This is where you can enter or modify the translation of the above source text. + Tady můžete zadávat nebo měnit překlad zdrojového textu. + + + + %1 translation + Překlad %1 + + + + %1 translator comments + %1 překladatelovy poznámky + + + + '%1' +Line: %2 + '%1' +Řádek: %2 + + + + MessageModel + + + Completion status for %1 + Stav zpracování %1 + + + + <file header> + <hlavička souboru> + + + + <context comment> + <související poznámka> + + + + <unnamed context> + <nepojmenovaná souvislost> + + + + MsgEdit + + + + This is the right panel of the main window. + + + + + PhraseBookBox + + + + Go to Phrase > Edit Phrase Book... The dialog that pops up is a PhraseBookBox. + + + + + (New Entry) + (Nový záznam) + + + + %1[*] - Qt Linguist + %1[*] - Qt Linguist + + + + Qt Linguist + Qt Linguist + + + + Cannot save phrase book '%1'. + Nelze uložit slovník '%1'. + + + + Edit Phrase Book + Upravit slovník + + + + This window allows you to add, modify, or delete entries in a phrase book. + Toto okno vám umožní vložit, měnit nebo odstranit záznamy z tohoto slovníku. + + + + &Translation: + &Překlad: + + + + This is the phrase in the target language corresponding to the source phrase. + Toto je text, který v cílovém jazyce odpovídá zdrojovému textu. + + + + S&ource phrase: + &Zdrojový text: + + + + This is a definition for the source phrase. + Toto je vymezení zdrojového textu. + + + + This is the phrase in the source language. + Toto je text ve zdrojovém jazyce. + + + + &Definition: + &Vymezení: + + + + Click here to add the phrase to the phrase book. + Sem klepněte kvůli vložení nového záznamu do slovníku. + + + + &New Entry + &Nový záznam + + + + Click here to remove the entry from the phrase book. + Sem klepněte kvůli odstranění nového záznamu ze slovníku. + + + + &Remove Entry + &Odstranit záznam + + + + Settin&gs... + &Nastavení... + + + + Click here to save the changes made. + Sem klepněte kvůli uložení provedených změn. + + + + &Save + &Uložit + + + + Click here to close this window. + Sem klepněte kvůli zavření tohoto okna. + + + + Close + Zavřít + + + + PhraseModel + + + Source phrase + Zdrojový text + + + + Translation + Překlad + + + + Definition + Vymezení + + + + PhraseView + + + Insert + Vložit + + + + Edit + Upravit + + + + Guess (%1) + Návrh (%1) + + + + Guess + Návrh + + + + QObject + + + Compiled Qt translations + Sestavené překlady Qt + + + + Translation files (%1);; + Překladové soubory (%1);; + + + + All files (*) + Všechny soubory (*) + + + + + + + + + + Qt Linguist + Qt Linguist + + + + GNU Gettext localization files + Překladové soubory GNU Gettext + + + + Qt translation sources (format 1.1) + Překladové soubory Qt (verze formátu 1.1) + + + + Qt translation sources (format 2.0) + Překladové soubory Qt (verze formátu 2.0) + + + + Qt translation sources (latest format) + Překladové soubory Qt (nejnovější formát) + + + + XLIFF localization files + Překladové soubory XLIFF + + + + Qt Linguist 'Phrase Book' + Slovník Qt Linguist + + + + SourceCodeView + + + <i>Source code not available</i> + <i>Zdrojový text není dostupný</i> + + + + <i>File %1 not available</i> + <i>Soubor %1 není dostupný</i> + + + + <i>File %1 not readable</i> + <i>Soubor %1 není čitelný</i> + + + + Statistics + + + Statistics + Statistiky + + + + Translation + Překlad + + + + Source + Zdroj + + + + 0 + 0 + + + + Words: + Slov: + + + + Characters: + Znaků: + + + + Characters (with spaces): + Znaků (s mezerami): + + + + Close + Zavřít + + + + TranslateDialog + + + This window allows you to search for some text in the translation source file. + Toto okno vám umožňuje hledání textu ve zdrojovém souboru s překladem. + + + + Type in the text to search for. + Zadejte text, který se má hledat. + + + + Find &source text: + Hledat &zdrojový text: + + + + &Translate to: + &Překlad: + + + + Search options + Nastavení hledání + + + + Texts such as 'TeX' and 'tex' are considered as different when checked. + Když je zapnuto, texty jako 'TeX' a 'tex' se považují za rozdílné. + + + + Match &case + Dbát na &psaní velkých a malých písmen + + + + Mark new translation as &finished + Nový překlad označit jako &vyřízený + + + + Click here to find the next occurrence of the text you typed in. + Klepněte sem pro skok k dalšímu výskytu hledáného textu. + + + + Find Next + Hledat dál + + + + Translate + Přeložit + + + + Translate All + Přeložit vše + + + + Click here to close this window. + Klepněte sem pro zavření tohoto okna. + + + + Cancel + Zrušit + + + + TranslationSettingsDialog + + + Any Country + Země + + + + + Settings for '%1' - Qt Linguist + Nastavení pro '%1' - Qt Linguist + + + + Source language + Zdrojový jazyk + + + + Language + Jazyk + + + + Country/Region + Země/Oblast + + + + Target language + Cílový jazyk + + + diff --git a/translations/qt_cs.ts b/translations/qt_cs.ts new file mode 100644 index 0000000..e184f64 --- /dev/null +++ b/translations/qt_cs.ts @@ -0,0 +1,10362 @@ + + + + + AudioEqualizer + + Frequency band, %1 Hz + Kmitočtové pásmo, %1 Hz + + + + AudioOutput + + <html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html> + <html>Zařízení pro přehrávání zvuku <b>%1</b> nepracuje.<br/>Místo něj <b>%2</b> se používá.</html> + + + Revert back to device '%1' + Přepnout zpět na zařízení '%1' + + + <html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html> + <html>Zařízení pro přehrávání zvuku <b>%1</b> bylo spuštěno,<br/>protože je právě dostupné a má větší přednost.</html> + + + + CloseButton + + + Close Tab + Zavřít kartu + + + + FakeReply + + + Fake error ! + Napodobená chyba! + + + + Invalid URL + Neplátné URL + + + + Phonon:: + + + Games + Hry + + + + Music + Hudba + + + + Video + Video + + + + Communication + Spojení + + + + Accessibility + Dostupnost + + + + Notifications + Oznámení + + + + Phonon::AudioOutput + + + <html>The audio playback device <b>%1</b> does not work.<br/>Falling back to <b>%2</b>.</html> + <html>Zařízení pro přehrávání zvuku <b>%1</b> nepracuje.<br/>Místo něj <b>%2</b> se používá.</html> + + + + <html>Switching to the audio playback device <b>%1</b><br/>which just became available and has higher preference.</html> + <html>Zařízení pro přehrávání zvuku <b>%1</b> bylo spuštěno,<br/>protože je právě dostupné a má větší přednost.</html> + + + + Revert back to device '%1' + Přepnout zpět na zařízení '%1' + + + + Phonon::Gstreamer::Backend + + + Warning: You do not seem to have the base GStreamer plugins installed. + All audio and video support has been disabled + Upozornění: Zdá se, že zákládní přídavné moduly pro GStreamer nejsou nainstalovány. +Podpora audia a videa byla vypnuta + + + + Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. + Some video features have been disabled. + Varování: Balíček gstreamer0.10-plugins-good není nainstalován. +Některé vlastnosti videa nejsou dostupné. + + + + Phonon::Gstreamer::MediaObject + + + + + + + + + + Could not open media source. + Zdroj s médii se nepodařilo otevřít. + + + + Could not decode media source. + Zdroj s médii se nepodařilo rozluštit. + + + + Invalid source type. + Neplatný typ zdroje s médii. + + + + Cannot start playback. + +Check your Gstreamer installation and make sure you +have libgstreamer-plugins-base installed. + Přehrávání nelze spustit. + +Ověřte, prosím, instalaci Gstreamer a ujistěte se, +že je nainstalován balíček libgstreamer-plugins-base. + + + + Could not open audio device. The device is already in use. + Zvukové zařízení se nepodařilo otevřít, protože se již používá. + + + + A required codec is missing. You need to install the following codec(s) to play this content: %0 + Všechny vyžadované kodeky nejsou nainstalovány. Kvůli přehrání tohoto obsahu je potřeba nainstalovat následující kodek(y): %0 + + + + Could not locate media source. + Zdroj s médii se nepodařilo nalézt. + + + + Phonon::MMF + + + Audio Output + Výstup zvuku + + + + The audio output device + Zařízení pro výstup zvuku + + + + Phonon::MMF::AudioEqualizer + + + Frequency band, %1 Hz + Kmitočtové pásmo, %1 Hz + + + + Phonon::MMF::EffectFactory + + + audio equalizer + zvukový ekvalizér + + + + Bass boost + Zdůraznění basů + + + + Distance Attenuation + Zeslabení v závislosti na vzdálenosti + + + + + Environmental Reverb + Vnější ozvěna + + + + Loudness + Hlasitost + + + + Source Orientation + Zaměření zdroje + + + + Stereo Widening + Rozšíření sterea + + + + Phonon::VolumeSlider + + + + + + Volume: %1% + Hlasitost: %1% + + + + + + Use this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1% + Posuvník se používá k nastavení hlasitosti. Poloha nejvíce vlevo odpovídá 0%; poloha nejvíce vpravo odpovídá %1% + + + + Muted + Ztlumení + + + + Q3Accel + + + %1, %2 not defined + %1, %2 nejsou stanoveny + + + + Ambiguous %1 not handled + Nejednoznačné %1 nemohou být zpracovány + + + + Q3DataTable + + + True + Pravdivý + + + + False + Nesprávný + + + + Delete + Smazat + + + + Insert + Vložit + + + + Update + Obnovit + + + + Q3FileDialog + + + + &OK + &OK + + + + &No + &Ne + + + + Dir + Adresář + + + + &Yes + &Ano + + + + Back + Zpět + + + + Date + Datum + + + + File + Soubor + + + + Name + Název + + + + + + Open + Otevřít + + + + Size + Velikost + + + + Sort + Roztřídit + + + + Type + Typ + + + + + + &Open + &Otevřít + + + + + &Save + &Uložit + + + + + Error + Chyba + + + + Open + Otevřít + + + + + Write: %1 + Zapsat: %1 + + + + Sort by &Size + Roztřídit podle &velikosti + + + + Sort by &Date + Roztřídit podle &data + + + + Sort by &Name + Roztřídit podle &názvu + + + + New Folder 1 + Nová složka 1 + + + + the directory + Adresář + + + + File &type: + Typ &souboru: + + + + + + File &name: + Název &souboru: + + + + Delete %1 + Smazat %1 + + + + + Cancel + Zrušit + + + + R&eload + Nahrát &znovu + + + + New Folder + Nová složka + + + + &Unsorted + &Neroztříděné + + + + Look &in: + Hle&dat v: + + + + Preview File Contents + Náhled obsahu souboru + + + + New Folder %1 + Nová složka %1 + + + + Read-write + Číst/Zapisovat + + + + Read-only + Pouze číst + + + + Copy or Move a File + Soubor kopírovat nebo posunout + + + + <qt>Are you sure you wish to delete %1 "%2"?</qt> + <qt>Jste si jistý, že chcete smazat %1 "%2"?</qt> + + + + Find Directory + Najít adresář + + + + Attributes + Vlastnosti + + + + Show &hidden files + &Ukázat skryté soubory + + + + + Save As + Uložit jako + + + + Inaccessible + Nepřístupné + + + + %1 +File not found. +Check path and filename. + %1 +Soubor se nepodařilo nalézt. +Ověřte cestu a název souboru. + + + + List View + Pohled se seznamem + + + + Special + Zvláštní vlastnost + + + + Write-only + Pouze zápis + + + + the symlink + Symbolický odkaz + + + + &Delete + &Smazat + + + + + + + All Files (*) + Všechny soubory (*) + + + + + Directories + Adresáře + + + + Symlink to Special + Symbolický odkaz k zvláštnímu souboru + + + + Select a Directory + Vyberte adresář + + + + All Files (*.*) + Všechny soubory (*.*) + + + + Read: %1 + Číst: %1 + + + + &Rename + &Přejmenovat + + + + Directory: + Adresář: + + + + One directory up + O jeden adresář nahoru + + + + Preview File Info + Náhled informace o souboru + + + + the file + Soubor + + + + Create New Folder + Vytvořit novou složku + + + + Symlink to File + Symbolický odkaz k souboru + + + + Symlink to Directory + Symbolický odkaz k adresáři + + + + Detail View + Podrobný pohled + + + + Q3LocalFs + + + Could not open +%1 + Nepodařilo se otevřít: +%1 + + + + Could not remove file or directory +%1 + Nepodařilo se odstranit soubor nebo adresář +%1 + + + + Could not create directory +%1 + Nepodařilo se vytvořit adresář +%1 + + + + + Could not read directory +%1 + Nepodařilo se přečíst adresář +%1 + + + + Could not rename +%1 +to +%2 + Nepodařilo se přejmenovat: +%1 +na +%2 + + + + Could not write +%1 + Nepodařilo se zapsat: +%1 + + + + Q3MainWindow + + + Line up + Uspořádat + + + + Customize... + Přizpůsobit... + + + + Q3NetworkProtocol + + + Operation stopped by the user + Operace byla zastavena uživatelem + + + + Q3ProgressDialog + + + + Cancel + Zrušit + + + + Q3TabDialog + + + + OK + OK + + + + Help + Nápověda + + + + Apply + Použít + + + + Cancel + Zrušit + + + + Defaults + Výchozí + + + + Q3TextEdit + + + Cu&t + Vyj&mout + + + + &Copy + &Kopírovat + + + + &Redo + &Znovu + + + + &Undo + &Zpět + + + + Clear + Smazat + + + + &Paste + &Vložit + + + + + Select All + Vybrat vše + + + + Q3TitleBar + + + Close + Zavřít + + + + Minimize + Zmenšit + + + Puts a minimized back to normal + Dá velikost zmenšeného okna zpátky do obvyklého stavu + + + + Displays the name of the window and contains controls to manipulate it + Zobrazí název okna a obsahuje příkazy pro zacházení s ním + + + + Makes the window full screen + Dá okno na celou obrazovku + + + + System + Systém + + + + Maximize + Zvětšit + + + + Contains commands to manipulate the window + Obsahuje příkazy pro zacházení s velikostí okna + + + + Restore up + Obnovit + + + + Puts a minimized window back to normal + Dá velikost zmenšeného okna zpátky do obvyklého stavu + + + + Closes the window + Zavře okno + + + + Puts a maximized window back to normal + Dá velikost zvětšeného okna zpátky do obvyklého stavu + + + + Moves the window out of the way + Zmenší okno + + + + Restore down + Obnovit + + + + Q3ToolBar + + + More... + Více... + + + + Q3UrlOperator + + + The protocol `%1' does not support getting files + Protokol `%1' nepodporuje nahrávání souborů + + + + The protocol `%1' does not support renaming files or directories + Protokol `%1' nepodporuje přejmenovávání souborů nebo adresářů + + + + The protocol `%1' does not support listing directories + Protokol `%1' nepodporuje sestavování seznamu adresářů + + + + + (unknown) + (neznámý) + + + + The protocol `%1' does not support removing files or directories + Protokol `%1' nepodporuje odstraňování souborů nebo adresářů + + + + The protocol `%1' does not support putting files + Protokol `%1' nepodporuje ukládání souborů + + + + + + The protocol `%1' is not supported + Protokol `%1' není podporován + + + + + The protocol `%1' does not support copying or moving files or directories + Protokol `%1' nepodporuje kopírování či přesun souborů nebo adresářů + + + + The protocol `%1' does not support creating new directories + Protokol `%1' nepodporuje vytváření nových adresářů + + + + Q3Wizard + + + &Help + &Nápověda + + + + &Cancel + &Zrušit + + + + &Finish + Do&končit + + + + &Next > + &Další > + + + + < &Back + < &Zpět + + + + QAbstractSocket + + + + + + Host not found + Nepodařilo se najít počítač + + + + + + Connection refused + Spojení bylo odmítnuto + + + + Connection timed out + Časový limit pro spojení byl překročen + + + + Socket is not connected + Zásuvka (socket) není spojena + + + + Socket operation timed out + Časový limit pro zásuvkovou (socket) operaci byl překročen + + + + Network unreachable + Síť není dosažitelná + + + + + + Operation on socket is not supported + Tato zásuvková (socket) operace není podporována + + + + QAbstractSpinBox + + + Step &down + Krok &dolů + + + + &Step up + &Krok nahoru + + + + &Select All + &Vybrat vše + + + + QAccessibleButton + + + Press + Stisknout + + + + QApplication + + + Activates the program's main window + Spustí hlavní okno programu + + + QT_LAYOUT_DIRECTION + LTR + + + + Activate + Spustit + + + + Executable '%1' requires Qt %2, found Qt %3. + Použití '%1' vyžaduje Qt %2; bylo ale nalezeno Qt %3. + + + + Incompatible Qt Library Error + Qt není slučitelná + + + + QT_LAYOUT_DIRECTION + Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout. + LTR + + + + QAxSelect + + + OK + OK + + + + COM &Object: + COM-&Objekt: + + + + &Cancel + &Zrušit + + + + Select ActiveX Control + Vybrat prvek ActiveX + + + + QCheckBox + + + Check + Označit křížkem + + + + Toggle + Přepnout + + + + Uncheck + Zrušit označení křížkem + + + + QColorDialog + + + &Red: + &Červená: + + + + &Sat: + &Sytost: + + + + &Val: + &Jasnost: + + + + Hu&e: + Barevný &odstín: + + + + Select Color + Vybrat barvu + + + + &Add to Custom Colors + &Přidat k uživatelem stanoveným barvám + + + + Bl&ue: + &Modrá: + + + + &Green: + &Zelená: + + + + &Basic colors + Základní &barvy + + + + &Custom colors + &Uživatelem stanovené barvy + + + + A&lpha channel: + A&lfa kanál: + + + + QComboBox + + + + Open + Otevřít + + + + True + Pravdivý + + + + Close + Zavřít + + + + False + Nesprávný + + + + QCoreApplication + + + %1: key is empty + QSystemSemaphore + %1: Neplatný údaj u klíče (prázdný) + + + + %1: unable to make key + QSystemSemaphore + %1: Nepodařilo se vytvořit klíč + + + + %1: ftok failed + QSystemSemaphore + %1: Vyvolání ftok se nezdařilo + + + %1: key is empty + %1: Neplatný údaj u klíče (prázdný) + + + %1: unable to make key + %1: Nepodařilo se vytvořit klíč + + + %1: ftok failed + %1: Vyvolání ftok se nezdařilo + + + + %1: already exists + QSystemSemaphore + %1: Již existuje + + + + %1: does not exist + QSystemSemaphore + %1: Neexistuje + + + + %1: out of resources + QSystemSemaphore + %1: Nejsou již použitelné zdroje + + + + %1: unknown error %2 + QSystemSemaphore + %1: Neznámá chyba %2 + + + + QDB2Driver + + + Unable to commit transaction + Transakci se nepodařilo provést (operace 'commit', odeslání, se nezdařila) + + + + Unable to set autocommit + 'autocommit' se nepodařilo nastavit + + + + Unable to connect + Nepodařilo se navázat spojení + + + + Unable to rollback transaction + Transakci se nepodařilo zvrátit (operace 'rollback', zvrácení, se nezdařila) + + + + QDB2Result + + + Unable to bind variable + Proměnnou se nepodařilo provést + + + + + Unable to execute statement + Příkaz se nepodařilo provést + + + + Unable to fetch next + Další datový záznam se nepodařilo natáhnout + + + + Unable to prepare statement + Příkaz se nepodařilo připravit + + + + Unable to fetch record %1 + Datový záznam %1 se nepodařilo natáhnout + + + + Unable to fetch first + První datový záznam se nepodařilo natáhnout + + + + QDateTimeEdit + + + AM + AM + + + + PM + PM + + + + am + am + + + + pm + pm + + + + QDial + + + QDial + QDial + + + + SliderHandle + Posuvník + + + + SpeedoMeter + Rychloměr + + + + QDialog + + + Done + Hotovo + + + + What's This? + Co je toto? + + + + QDialogButtonBox + + + + + OK + OK + + + + &OK + &OK + + + + &No + &Ne + + + + &Yes + &Ano + + + + Help + Nápověda + + + + Open + Otevřít + + + + Save + Uložit + + + + &Save + &Uložit + + + + Abort + Zrušit + + + + Apply + Použít + + + + Close + Zavřít + + + + Reset + Vrátit + + + + Retry + Opakovat + + + + Restore Defaults + Obnovit výchozí + + + + &Close + &Zavřít + + + + Cancel + Zrušit + + + + Ignore + Přehlížet + + + + Close without Saving + Zavřít bez uložení + + + + N&o to All + N&e, žádné + + + + Save All + Uložit vše + + + + &Cancel + &Zrušit + + + + Discard + Odmítnout + + + + Yes to &All + Ano, &vše + + + + Don't Save + Neukládat + + + + QDirModel + + Kind + Druh + + + + Name + Název + + + + Size + Velikost + + + + Kind + Match OS X Finder + Druh + + + + Type + All other platforms + Typ + + + Type + Typ + + + + Date Modified + Datum změny + + + + QDockWidget + + + Dock + Vplout do panelu + + + + Close + Zavřít + + + + Float + Plout + + + + QDoubleSpinBox + + + Less + Méně + + + + More + Více + + + + QErrorMessage + + + &OK + &OK + + + + Fatal Error: + Osudová chyba: + + + + &Show this message again + Toto hlášení &ukázat ještě jednou + + + + Debug Message: + Hlášení o odladění: + + + + Warning: + Varování: + + + + QFile + + + Cannot create %1 for output + %1 se nepodařilo zřídit pro výstup + + + + Failure to write block + Datový blok se nepodařilo zapsat + + + + Will not rename sequential file using block copy + Nepřejmenuje posloupný soubor pomocí kopie bloku + + + + Cannot remove source file + Nelze odstranit zdrojový soubor + + + + Cannot open %1 for input + %1 se nepodařilo otevřít pro čtení + + + + + Destination file exists + Cílový soubor již existuje + + + + Cannot open for output + Nepodařilo se otevřít pro zápis + + + + QFileDialog + + + + Back + Zpět + + + + + File + Soubor + + + + File Folder + Match Windows Explorer + Souborová složka + + + + Folder + All other platforms + Složka + + + + Alias + Mac OS X Finder + Přezdívka + + + + Shortcut + All other platforms + Zkratka + + + + Open + Otevřít + + + + + + &Open + &Otevřít + + + + + &Save + &Uložit + + + + Drive + Disková jednotka + + + + Show + Ukázat + + + + '%1' is write protected. +Do you want to delete it anyway? + '%1' je chráněn proti zápisu. +Přesto chcete soubor smazat? + + + + + File &name: + Název &souboru: + + + + New Folder + Nová složka + + + + + Parent Directory + Nadřazený adresář + + + + &New Folder + &Nová složka + + + + Remove + Odstranit + + + + My Computer + Můj počítač + + + + + Look in: + Hledat v: + + + + + Files of type: + Soubory typu: + + + + Find Directory + Najít adresář + + + + Show &hidden files + &Ukázat skryté soubory + + + + Are sure you want to delete '%1'? + Jste si jistý, že %1 chcete smazat? + + + + Save As + Uložit jako + + + + + %1 +Directory not found. +Please verify the correct directory name was given. + %1 +Adresář se nepodařilo nalézt. +Ověřte, prosím, že byl zadán správný název adresáře. + + + + + List View + Pohled se seznamem + + + + + &Choose + &Vybrat + + + + &Delete + &Smazat + + + + + All Files (*) + Všechny soubory (*) + + + + Directories + Adresáře + + + + All Files (*.*) + Všechny soubory (*.*) + + + + &Rename + &Přejmenovat + + + + Could not delete directory. + Adresář se nepodařilo smazat. + + + + + Directory: + Adresář: + + + + Unknown + Neznámý + + + + %1 already exists. +Do you want to replace it? + Soubor %1 již existuje. +Chcete jej nahradit? + + + + + Forward + Dopředu + + + + Recent Places + Naposledy navštívené + + + + + Create New Folder + Vytvořit novou složku + + + + + Detail View + Podrobný pohled + + + + %1 +File not found. +Please verify the correct file name was given. + %1 +Soubor se nepodařilo nalézt. +Ověřte, prosím, že byl zadán správný název souboru. + + + + QFileSystemModel + + Kind + Druh + + + + Name + Název + + + + Size + Velikost + + + Type + Typ + + + + + %1 GB + %1 GB + + + + + %1 KB + %1 KB + + + + + %1 MB + %1 MB + + + + + %1 TB + %1 TB + + + + <b>The name "%1" can not be used.</b><p>Try using another name, with fewer characters or no punctuations marks. + <b>Název "%1" nelze použít.</b><p>Zkuste použít jiný název, s menším počtem znaků nebo bez zvláštních znaků. + + + + + %1 bytes + %1 bytů + + + + My Computer + Můj počítač + + + + Computer + Počítač + + + + Invalid filename + Neplatný název souboru + + + + Kind + Match OS X Finder + Druh + + + + Type + All other platforms + Typ + + + + Date Modified + Datum změny + + + + QFontDatabase + + + Any + Všechna + + + + Lao + Laoské + + + + + + Bold + Tučné + + + + Demi + Polotučné + + + + Thai + Thajské + + + + + + Black + Černé + + + + Greek + Řecké + + + + Khmer + Khmerské + + + + Latin + Latinské + + + + + Light + Lehké + + + + Ogham + Ogamské + + + + Oriya + Oriya + + + + Runic + Runové + + + + Tamil + Tamilské + + + + Cyrillic + Cyrilské + + + + Kannada + Kannada + + + + Malayalam + Malayalam + + + + Simplified Chinese + Zjednodušená čínština + + + + + Demi Bold + Polotučné + + + + Arabic + Arabské + + + + Hebrew + Hebrejské + + + + Myanmar + Myanmar + + + + + Italic + Itala + + + + Korean + Korejské + + + + + Normal + Obvyklé + + + + + Oblique + Nakloněné + + + + Telugu + Telugu + + + + Thaana + Thaana + + + + Symbol + Symbol + + + + Syriac + Syrské + + + + Devanagari + Devanagari + + + + Japanese + Japonské + + + + Bengali + Bengálské + + + + Armenian + Arménské + + + + Sinhala + Sinhálské + + + + Tibetan + Tibetské + + + + Vietnamese + Větnamské + + + + Gujarati + Gujarati + + + + Traditional Chinese + Tradiční čínština + + + + Georgian + Gruzínské + + + + Gurmukhi + Gurmukhi + + + + QFontDialog + + + &Font + &Písmo + + + + &Size + &Velikost + + + + Sample + Vzorek + + + + Font st&yle + Druh pís&ma + + + + Wr&iting System + Způsob &psaní + + + + + Select Font + Vybrat písmo + + + + &Underline + &Podtrhnout + + + + Effects + Efekty + + + + Stri&keout + Pře&škrtnout + + + + QFtp + + + + Listing directory failed: +%1 + Obsah adresářů nelze ukázat: +%1 + + + + + Creating directory failed: +%1 + Vytvoření adresářů se nezdařilo: +%1 + + + + + Not connected + Žádné spojení + + + + + Connection refused for data connection + Odmítnuto spojení spojení pro data + + + + + Login failed: +%1 + Přihlášení se nezdařilo: +%1 + + + + + Downloading file failed: +%1 + Stažení souboru se nezdařilo: +%1 + + + + Connected to host + Spojení s počítačem navázáno + + + + Connection timed out to host %1 + Časový limit pro spojení s počítačem '%1' byl překročen + + + + + + Connected to host %1 + Spojeno s počítačem %1 + + + + + Connecting to host failed: +%1 + Spojení s počítačem se nezdařilo: +%1 + + + + + Host %1 not found + Počítač %1 se nepodařilo nalézt + + + + + Uploading file failed: +%1 + Nahrání souboru se nezdařilo: +%1 + + + + + Changing directory failed: +%1 + Změna adresáře se nezdařila: +%1 + + + + Host found + Počítač byl nalezen + + + + + Removing directory failed: +%1 + Odstranění adresáře se nezdařilo: +%1 + + + + + Connection refused to host %1 + Spojení s počítačem %1 odmítnuto + + + + Connection to %1 closed + Spojení s %1 ukončeno + + + + + Removing file failed: +%1 + Odstranění souboru se nezdařilo: +%1 + + + + Host %1 found + Počítač %1 byl nalezen + + + + + + + Unknown error + Neznámá chyba + + + + + + Connection closed + Spojení ukončeno + + + + QHostInfo + + + Unknown error + Neznámá chyba + + + + QHostInfoAgent + + + + + + Host not found + Nepodařilo se najít počítač + + + + + + + Unknown address type + Neznámý typ adresy + + + + + + Unknown error + Neznámá chyba + + + + No host name given + Nebyl zadán název pro hostitelský počítač + + + + Invalid hostname + Neplatný název pro hostitelský počítač + + + + QHttp + + + Connection refused (or timed out) + Spojení bylo odmítnuto (nebo byl překročen časový limit) + + + + Data corrupted + Data jsou poškozena + + + + Connected to host + Spojení s počítačem navázáno + + + + Connected to host %1 + Spojeno s počítačem %1 + + + + + + Host %1 not found + Počítač %1 se nepodařilo nalézt + + + + Host requires authentication + Hostitelský počítač požaduje autentizaci + + + + Error writing response to device + Při psaní odpovědi výstupnímu zařízení se vyskytla chyba + + + + HTTPS connection requested but SSL support not compiled in + Požadované HTTPS spojení nelze vytvořit, protože neexistuje žádná SSL podpora + + + + Host found + Počítač byl nalezen + + + + + Connection refused + Spojení bylo odmítnuto + + + + Proxy authentication required + Požadována proxy autentizace + + + + Unknown protocol specified + Byl zadán neznámý protokol + + + + + + + HTTP request failed + HTTP dotaz se nezdařil + + + + Proxy requires authentication + Proxy server požaduje autentizaci + + + + Authentication required + Požadována autentizace + + + + SSL handshake failed + Během startu SSL protokolu se vyskytla chyba + + + + Connection to %1 closed + Spojení s %1 ukončeno + + + + + + + Invalid HTTP chunked body + Obsah (chunked body - rozkouskované tělo) HTTP je neplatný + + + + Host %1 found + Počítač %1 byl nalezen + + + + + Wrong content length + Neplatný údaj o délce obsahu + + + + + + + Unknown error + Neznámá chyba + + + + + Invalid HTTP response header + Hlavička HTTP odpovědi není platná + + + + Unknown authentication method + Neznámý způsob autentizace + + + + + Connection closed + Spojení ukončeno + + + + + No server set to connect to + Pro spojení nebyl nastaven žádný počítač - server + + + + + Server closed connection unexpectedly + Server neočekávaně uzavřel spojení + + + + + Request aborted + Požadavek byl zrušen + + + + QHttpSocketEngine + + + Proxy connection refused + Proxy server odmítl navázání spojení + + + + Proxy denied connection + Proxy server odmítl spojení + + + + Proxy server not found + Nepodařilo se najít žádný proxy server + + + + Proxy server connection timed out + Při spojení s proxy serverem byl překročen časový limit + + + + Did not receive HTTP response from proxy + Žádná HTTP odpověď od proxy serveru + + + + Proxy connection closed prematurely + Proxy server předčasně ukončil spojení + + + + Error communicating with HTTP proxy + Chyba při spojení s proxy serverem + + + + Authentication required + Požadována autentizace + + + + Error parsing authentication request from proxy + Chyba při vyhodnocení autentizačního požadavku proxy serveru + + + + QIBaseDriver + + + Unable to commit transaction + Transakci se nepodařilo provést (operace 'commit', odeslání, se nezdařila) + + + + Could not start transaction + Nepodařilo se spustit žádnou transakci + + + + Error opening database + Nepodařilo se otevřít spojení s databází + + + + Unable to rollback transaction + Transakci se nepodařilo zvrátit (operace 'rollback', zvrácení, se nezdařila) + + + + QIBaseResult + + + Unable to commit transaction + Transakci se nepodařilo provést (operace 'commit', odeslání, se nezdařila) + + + + Unable to open BLOB + Nepodařilo se otevřít BLOB + + + + Could not describe statement + Nepodařilo se získat žádný popis příkazu + + + + + Could not describe input statement + Nepodařilo se získat žádný popis vstupního příkazu + + + + Could not allocate statement + Přidělení příkazu se nezdařilo + + + + Unable to write BLOB + Nepodařilo se zapsat BLOB + + + + Could not start transaction + Nepodařilo se spustit žádnou transakci + + + + Unable to close statement + Příkaz se nepodařilo zavřít + + + + Could not get query info + Požadované informace k vyhledávání nejsou k dispozici + + + + + Could not find array + Nepodařilo se najít pole + + + + Could not get array data + Nepodařilo se přečíst data pole + + + + Unable to execute query + Dotaz se nepodařilo provést + + + + Could not prepare statement + Příkaz se nepodařilo připravit + + + + Could not fetch next item + Další prvek se nepodařilo vyzvednout + + + + Could not get statement info + K dispozici není žádná informace k příkazu + + + + Unable to create BLOB + Nepodařilo se vytvořit žádný BLOB + + + + Unable to read BLOB + BLOB se nepodařilo přečíst + + + + QIODevice + + + No such file or directory + Nepodařilo se najít žádný takový soubor nebo adresář + + + + Permission denied + Přístup odepřen + + + + No space left on device + Na zařízení není žádný volný úložný prostor + + + + Unknown error + Neznámá chyba + + + + Too many open files + Příliš mnoho otevřených souborů + + + + QInputContext + + + XIM + XIM + + + + FEP + FEP + + + + Windows input method + Windows-vstupní metoda + + + + S60 FEP input method + S60 FEP-vstupní metoda + + + + XIM input method + XIM-vstupní metoda + + + + Mac OS X input method + Mac OS X-vstupní metoda + + + + QInputDialog + + + Enter a value: + Zadejte hodnotu: + + + + QLibrary + + + Could not unmap '%1': %2 + Operace unmap, zrušit zobrazení, se nezdařila u '%1': %2 + + + + + Cannot unload library %1: %2 + Knihovnu %1 nelze vyjmout: %2 + + + + + Cannot load library %1: %2 + Knihovnu %1 nelze nahrát: %2 + + + + The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5] + Přídavný modul '%1' používá neslučitelnou Qt knihovnu. (%2.%3.%4) [%5] + + + + + Cannot resolve symbol "%1" in %2: %3 + Symbol "%1" nelze v %2 vyřešit: %3 + + + + Plugin verification data mismatch in '%1' + Ověřovací data přídavného nesouhlasí v '%1' + + + + The plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.) + Přídavný modul '%1' používá neslučitelnou Qt knihovnu. (Knihovny vytvořené v režimu ladění a vydání nemohou být používány společně.) + + + + The file '%1' is not a valid Qt plugin. + Soubor '%1' není platným přídavným modulem Qt. + + + + + The shared library was not found. + Nepodařilo se nalézt sdílenou knihovnu. + + + + Unknown error + Neznámá chyba + + + + The plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3" + Přídavný modul '%1' používá neslučitelnou Qt knihovnu. Potřebný byl zvláštní klíč pro sestavení "%2", obdržen "%3" + + + + Could not mmap '%1': %2 + Operace mmap se nezdařila u '%1': %2 + + + + QLineEdit + + + Cu&t + &Vyjmout + + + + &Copy + &Kopírovat + + + + &Redo + &Znovu + + + + &Undo + &Zpět + + + + &Paste + &Vložit + + + + Delete + Smazat + + + + Select All + Vybrat vše + + + + QLocalServer + + + + %1: Name error + %1: Chybný název + + + + %1: Unknown error %2 + %1: Neznámá chyba %2 + + + + %1: Permission denied + %1: Přístup odepřen + + + + %1: Address in use + %1: Adresa se již používá + + + + QLocalSocket + + + + + %1: Connection error + %1: Chyba spojení + + + + + %1: Connection refused + %1: Spojení bylo odmítnuto + + + + + %1: Unknown error %2 + %1: Neznámá chyba %2 + + + + + %1: Socket access error + %1: Chyba při přístupu k zásuvce (socketu) + + + + + %1: Socket resource error + %1: Chyba zásuvky (socketu) - potíže se zdrojem + + + + + %1: The socket operation is not supported + %1: Tato operace se zásuvkou (socketem) není podporována + + + + + + + %1: Invalid name + %1: Neplatný název + + + + %1: Unknown error + %1: Neznámá chyba + + + + + %1: Socket operation timed out + %1: Překročení času při operaci se zásuvkou (socketem) + + + + + %1: Datagram too large + %1: Datagram je příliš veliký + + + + + %1: Remote closed + %1: Spojení bylo protější stranou uzavřeno + + + + QMYSQLDriver + + + Unable to commit transaction + Transakci se nepodařilo provést (operace 'commit', odeslání, se nezdařila) + + + + Unable to open database ' + Nepodařilo se otevřít spojení s databází ' + + + + Unable to connect + Nepodařilo se navázat spojení + + + + Unable to rollback transaction + Transakci se nepodařilo zvrátit (operace 'rollback', zvrácení, se nezdařila) + + + + Unable to begin transaction + Transakci se nepodařilo spustit + + + + QMYSQLResult + + + Unable to execute statement + Příkaz se nepodařilo provést + + + + Unable to store statement results + Výsledky příkazu se nepodařilo uložit + + + + Unable to execute next query + Další dotaz nelze provést + + + + + Unable to bind outvalues + Výstupní hodnoty se nepodařilo spojit + + + + Unable to store next result + Další výsledek nelze uložit + + + + Unable to fetch data + Nepodařilo se natáhnout žádná data + + + + + Unable to prepare statement + Příkaz se nepodařilo připravit + + + + Unable to store result + Výsledek se nepodařilo uložit + + + + Unable to bind value + Hodnotu se nepodařilo spojit + + + + Unable to execute query + Dotaz se nepodařilo provést + + + + Unable to reset statement + Příkaz se nepodařilo znovu nastavit + + + + QMdiArea + + + (Untitled) + (Bez názvu) + + + + QMdiSubWindow + + + Help + Nápověda + + + + Menu + Menu + + + + &Move + Po&sunout + + + + &Size + Změnit &velikost + + + + Close + Zavřít + + + + Minimize + Zmenšit + + + + Shade + Navinout + + + + Stay on &Top + Zůstat v &popředí + + + + &Close + &Zavřít + + + + - [%1] + - [%1] + + + + %1 - [%2] + %1 - [%2] + + + + &Restore + &Obnovit + + + + Restore + Obnovit + + + + Maximize + Zvětšit + + + + Unshade + Odvinout + + + + Mi&nimize + Zmen&šit + + + + Ma&ximize + Zvě&tšit + + + + Restore Down + Obnovit + + + + QMenu + + + + Open + Otevřít + + + + + Close + Zavřít + + + + + + Execute + Provést + + + + QMenuBar + + + Actions + Činnosti + + + + QMessageBox + + + + + + OK + OK + + + + Help + Nápověda + + + <h3>About Qt</h3><p>This program uses Qt version %1.</p><p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p> + <h3>O Qt</h3><p>Tento program používá Qt ve verzi %1.</p><p>Qt je sadou softwarových nástrojů C++ určených pro vývoj aplikací napříč platformami.</p><p>Qt poskytuje jednoduchou přenositelnost přes MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, a všechny hlavní obchodní varianty systému Unix. Qt je rovněž dostupný pro vložená zařízení jako Qt pro Embedded Linux a Qt pro Windows CE.</p><p>Qt je dostupné pod třemi rozdílnými licenčními volbami navrženými pro přizpůsobení se potřebám našich různých uživatelů.</p>Qt licencované pod naší obchodní licenční smlouvou je vhodné pro vývoj soukromého/obchodního software, kde si nepřejete sdílet jakýkoli zdrojový kód se třetími stranami, nebo jinak řečeno, když nemůžete vyhovět podmínkám GNU LGPL ve verzi 2.1 nebo GNU GPL ve verzi 3.0.</p><p>Qt licencované pod GNU LGPL ve verzi 2.1 je vhodné pro vývoj Qt aplikací (soukromých nebo s otevřeným zdrojovým kódem), za předpokladu že můžete souhlasit s požadavky a podmínkami GNU LGPL version 2.1.</p><p>Qt licencované pod GNU General Public License ve verzi 3.0 je vhodné pro vývoj aplikací Qt, u nichž si přejete použít takovou aplikaci ve spojení se software, který podléhá požadavkům GNU GPL ve verzi 3.0, nebo kde jste jinak ochoten souhlasit s podmínkami GNU GPL ve verzi 3.0.</p><p>Podívejte se, prosím, na <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> kvůli přehledu licencování Qt.</p><p>Copyright (C) 2009 Nokia Corporation a/nebo její dceřinná(é) společnost(i).</p><p>Qt je výrobkem společnosti Nokia. Podívejte se na <a href="http://qt.nokia.com/">qt.nokia.com</a>kvůli více informacím.</p> + + + + Show Details... + Ukázat podrobnosti... + + + + <h3>About Qt</h3><p>This program uses Qt version %1.</p> + <h3>O Qt</h3><p>Tento program používá Qt-verze %1.</p> + + + + <p>Qt is a C++ toolkit for cross-platform application development.</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p><p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Please see <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> for an overview of Qt licensing.</p><p>Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt is a Nokia product. See <a href="http://qt.nokia.com/">qt.nokia.com</a> for more information.</p> + <p>Qt je sadou softwarových nástrojů C++ určených pro vývoj aplikací napříč platformami.</p><p>Qt poskytuje jednoduchou přenositelnost přes MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, a všechny hlavní obchodní varianty systému Unix. Qt je rovněž dostupný pro vložená zařízení jako Qt pro Embedded Linux a Qt pro Windows CE.</p><p>Qt je dostupné pod třemi rozdílnými licenčními volbami navrženými pro přizpůsobení se potřebám našich různých uživatelů.</p>Qt licencované pod naší obchodní licenční smlouvou je vhodné pro vývoj soukromého/obchodního software, kde si nepřejete sdílet jakýkoli zdrojový kód se třetími stranami, nebo jinak řečeno, když nemůžete vyhovět podmínkám GNU LGPL ve verzi 2.1 nebo GNU GPL ve verzi 3.0.</p><p>Qt licencované pod GNU LGPL ve verzi 2.1 je vhodné pro vývoj Qt aplikací (soukromých nebo s otevřeným zdrojovým kódem), za předpokladu že můžete souhlasit s požadavky a podmínkami GNU LGPL version 2.1.</p><p>Qt licencované pod GNU General Public License ve verzi 3.0 je vhodné pro vývoj aplikací Qt, u nichž si přejete použít takovou aplikaci ve spojení se software, který podléhá požadavkům GNU GPL ve verzi 3.0, nebo kde jste jinak ochoten souhlasit s podmínkami GNU GPL ve verzi 3.0.</p><p>Podívejte se, prosím, na <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> kvůli přehledu licencování Qt.</p><p>Copyright (C) 2009 Nokia Corporation a/nebo její dceřinná(é) společnost(i).</p><p>Qt je výrobkem společnosti Nokia. Podívejte se na <a href="http://qt.nokia.com/">qt.nokia.com</a>kvůli více informacím.</p> + + + + About Qt + O Qt + + + <p>This program uses Qt Open Source Edition version %1.</p><p>Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.</p><p>Please see <a href="http://www.trolltech.com/company/model/">www.trolltech.com/company/model/</a> for an overview of Qt licensing.</p> + <p>Tento program používá Qt Open Source Edition verze %1.</p><p>Qt Open Source Edition je zamýšlena pro vývoj Open Source aplikací. Pro vývoj vlastnických aplikací (uzavřené zdrojové kódy) potřebujete Qt licenci.</p><p>Podívejte se, prosím, na <a href="http://www.trolltech.com/company/model/">www.trolltech.com/company/model/</a> kvůli přehledu licencování Qt.</p> + + + + Hide Details... + Skrýt podrobnosti... + + + <p>This program uses Qt version %1.</p> + <p>Tento program používá Qt-verze %1.</p> + + + + QMultiInputContext + + + Select IM + Zvolit způsob vstupu + + + + QMultiInputContextPlugin + + + Multiple input method switcher that uses the context menu of the text widgets + Přepínač pro více způsobů vstupu, který používá související nabídku textového prvku + + + + Multiple input method switcher + Přepínač pro více způsobů vstupu + + + + QNativeSocketEngine + + + The proxy type is invalid for this operation + Tuto operaci nelze s tímto typem proxy provést + + + + Network operation timed out + Časový limit pro síťovou operaci byl překročen + + + + The remote host closed the connection + Vzdálený počítač uzavřel spojení + + + + Invalid socket descriptor + Neplatný deskriptor zásuvky (socketu) + + + + Host unreachable + Cílový počítač je nedosažitelný + + + + Protocol type not supported + Protokol tohoto typu není podporován + + + + Datagram was too large to send + Datagram byl pro odeslání příliš veliký + + + + Attempt to use IPv6 socket on a platform with no IPv6 support + Vyzkoušelo se použít IPv6 zásuvku (socket) na systému bez podpory IPv6 + + + + Unable to receive a message + Zprávu se nepodařilo přijmout + + + + Permission denied + Přístup odepřen + + + + Connection refused + Spojení bylo odmítnuto + + + + Unable to write + Nepodařilo se zapsat + + + + Another socket is already listening on the same port + Na tomto portu již naslouchá jiná zásuvka (socket) + + + + Unable to send a message + Nepodařilo se odeslat hlášení + + + + The bound address is already in use + Uvedená adresa se už používá + + + + Connection timed out + Časový limit pro spojení byl překročen + + + + Network error + Síťová chyba + + + + Unsupported socket operation + Nepodporovaná zásuvková operace (povel pro socket) + + + + Operation on non-socket + Operaci lze použít pouze na jedné zásuvce (socketu) + + + + Unable to initialize broadcast socket + Zásuvku pro vysílání (socket) se nepodařilo spustit + + + + Unknown error + Neznámá chyba + + + + Unable to initialize non-blocking socket + Neblokující zásuvku (socket) se nepodařilo spustit + + + + The address is protected + Adresa je chráněna + + + + Network unreachable + Síť je nedosažitelná + + + + The address is not available + Adresa není dostupná + + + + Out of resources + Nejsou dostupné žádné zdroje + + + + QNetworkAccessCacheBackend + + + Error opening %1 + %1 se nepodařilo otevřít + + + + QNetworkAccessDebugPipeBackend + + + Write error writing to %1: %2 + Při zápisu do souboru %1: %2 nastala chyba + + + + QNetworkAccessFileBackend + + + Request for opening non-local file %1 + Požadavek na otevření souboru přes síť %1 + + + + Read error reading from %1: %2 + Při čtení ze souboru %1 nastala chyba: %2 + + + + Cannot open %1: Path is a directory + %1 nelze otevřít: Jedná se o adresář + + + + Error opening %1: %2 + %1 se nepodařilo otevřít: %2 + + + + Write error writing to %1: %2 + Při zápisu do souboru %1: %2 nastala chyba + + + + QNetworkAccessFtpBackend + + + No suitable proxy found + Nepodařilo se najít žádný vhodný proxy server + + + + Error while downloading %1: %2 + Při stahování %1 se vyskytla chyba: %2 + + + + Error while uploading %1: %2 + Při nahrávání %1 se vyskytla chyba: %2 + + + + Cannot open %1: is a directory + %1 nelze otevřít: Jedná se o adresář + + + + Logging in to %1 failed: authentication required + Přihlášení do %1 se nezdařilo: Je požadována autentizace + + + + QNetworkAccessHttpBackend + + + No suitable proxy found + Nepodařilo se najít žádný vhodný proxy server + + + + QNetworkReply + + + Error downloading %1 - server replied: %2 + Beim Herunterladen von %1 trat ein Fehler auf - Die Antwort des Servers ist: %2 + + + + Protocol "%1" is unknown + Protokol "%1" není znám + + + + QNetworkReplyImpl + + + + Operation canceled + Operace byla zrušena + + + + QOCIDriver + + + Unable to commit transaction + Transakci se nepodařilo provést (operace 'commit', odeslání, se nezdařila) + + + Unable to initialize + Inicializace se nezdařila + + + + Unable to logon + Přihlášení se nezdařilo + + + + Unable to rollback transaction + Transakci se nepodařilo zvrátit (operace 'rollback', zvrácení, se nezdařila) + + + + Unable to begin transaction + Transakci se nepodařilo spustit + + + + Unable to initialize + QOCIDriver + Spuštění se nezdařilo + + + + QOCIResult + + + Unable to alloc statement + Přidělení příkazu se nepodařilo + + + + Unable to goto next + Nelze jít k dalšímu prvku + + + + Unable to get statement type + Nepodařilo se získat typ příkazu + + + + Unable to execute statement + Příkaz se nepodařilo provést + + + + + + Unable to bind column for batch execute + Nepodařilo se spojit sloupec pro provedení příkazu dávkového zpracování + + + Unable to execute select statement + Výběrové vyhledávání se nepodařilo provést + + + + Unable to prepare statement + Příkaz se nepodařilo připravit + + + + Unable to execute batch statement + Příkaz pro dávkové zpracování se nepodařilo provést + + + + Unable to bind value + Hodnotu se nepodařilo spojit + + + + QODBCDriver + + + Unable to commit transaction + Transakci se nepodařilo provést (operace 'commit', odeslání, se nezdařila) + + + + Unable to enable autocommit + 'autocommit' se nepodařilo povolit + + + Unable to connect - Driver doesn't support all needed functionality + Nepodařilo se navázat spojení, protože ovladač nutnou funkcionalitu plně nepodporuje + + + + Unable to disable autocommit + 'autocommit', automatické odeslání, se nepodařilo zastavit + + + + Unable to connect + Nepodařilo se navázat spojení + + + + Unable to connect - Driver doesn't support all functionality required + Nepodařilo se navázat spojení, protože ovladač nutnou funkcionalitu plně nepodporuje + + + + Unable to rollback transaction + Transakci se nepodařilo zvrátit (operace 'rollback', zvrácení, se nezdařila) + + + + QODBCResult + + + Unable to bind variable + Proměnnou se nepodařilo provést + + + + + Unable to execute statement + Příkaz se nepodařilo provést + + + + Unable to fetch next + Další datový záznam se nepodařilo natáhnout + + + + + + Unable to fetch last + Poslední datový záznam se nepodařilo natáhnout + + + + Unable to prepare statement + Příkaz se nepodařilo spustit + + + + Unable to fetch previous + Předchozí datový záznam se nepodařilo natáhnout + + + + Unable to fetch + Nepodařilo se natáhnout žádná data + + + + + QODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration + QODBCResult::reset: 'SQL_CURSOR_STATIC' se nepodařilo nastavit jako příkaz vlastnosti . Ověřte, prosím, nastavení svého ODBC ovladače + + + + Unable to fetch first + První datový záznam se nepodařilo natáhnout + + + + QObject + + + Invalid hostname + Neplatný název pro hostitelský počítač + + + Home + Home + + + Protocol error: packet of size 0 received + Chyba v zápisu: Byl přijat paket o nulové velikosti + + + + Invalid URI: %1 + Neplátná URI: %1 + + + + Socket error on %1: %2 + Chyba zásuvky (socketu) u %1: %2 + + + + + No host name given + Nebyl zadán název pro hostitelský počítač + + + Read error reading from %1: %2 + Při čtení ze souboru %1 nastala chyba: %2 + + + + Remote host closed the connection prematurely on %1 + Vzdálený počítač předčasně ukončil spojení s %1 + + + + Operation not supported on %1 + Tato operace není %1 podporována + + + Write error writing to %1: %2 + Při zápisu do souboru %1: %2 nastala chyba + + + + QPPDOptionsModel + + + Name + Název + + + + Value + Hodnota + + + + QPSQLDriver + + + Unable to subscribe + Registrace se nezdařila + + + + Could not begin transaction + Transakci se nepodařilo spustit + + + + Could not rollback transaction + Transakci se nepodařilo zvrátit (operace 'rollback', zvrácení, se nezdařila) + + + + Could not commit transaction + Transakci se nepodařilo provést (operace 'commit', odeslání, se nezdařila) + + + + Unable to connect + Nepodařilo se navázat spojení + + + + Unable to unsubscribe + Registraci se nepodařilo zrušit + + + + QPSQLResult + + + Unable to prepare statement + Příkaz se nepodařilo připravit + + + + Unable to create query + Nepodařilo se vytvořit žádný dotaz + + + + QPageSetupWidget + + + Form + Formulář + + + + bottom margin + Dolní okraj + + + + Paper + Papír + + + + Paper source: + Zdroj papíru: + + + + Centimeters (cm) + Centimetry (cm) + + + + right margin + Pravý okraj + + + + Margins + Okraje + + + + Landscape + Formát na šířku + + + + Width: + Šířka: + + + + Orientation + Zaměření + + + + Portrait + Formát na výšku + + + + top margin + Horní okraj + + + + left margin + Levý okraj + + + + Page size: + Velikost stran: + + + + Reverse portrait + Obrácený formát na výšku + + + + Millimeters (mm) + Milimetry (mm) + + + + Points (pt) + Body (pt) + + + + Inches (in) + Palce (in) + + + + Reverse landscape + Obrácený formát na šířku + + + + Height: + Výška: + + + + QPluginLoader + + + The plugin was not loaded. + Přídavný modul nebyl nahrán. + + + + Unknown error + Neznámá chyba + + + + QPrintDialog + + + A0 + A0 + + + + A1 + A1 + + + + A2 + A2 + + + + A3 + A3 + + + + A4 + A4 + + + + A5 + A5 + + + + A6 + A6 + + + + A7 + A7 + + + + A8 + A8 + + + + A9 + A9 + + + + B0 + B0 + + + + B1 + B1 + + + + B2 + B2 + + + + B3 + B3 + + + + B4 + B4 + + + + B5 + B5 + + + + B6 + B6 + + + + B7 + B7 + + + + B8 + B8 + + + + B9 + B9 + + + + OK + OK + + + + B10 + B10 + + + + C5E + C5E + + + + DLE + DLE + + + + A6 (105 x 148 mm) + A6 (105 x 148 mm) + + + + Legal (8.5 x 14 inches, 216 x 356 mm) + Právní (8,5 x 14 palců, 216 x 356 mm) + + + + Folio + Folio + + + + Legal + Právní + + + + Print all + Tisknout vše + + + + + + Print + Tisk + + + + &Options << + &Nastavení << + + + + + &Options >> + &Nastavení >> + + + + B6 (125 x 176 mm) + B6 (125 x 176 mm) + + + + B8 (62 x 88 mm) + B8 (62 x 88 mm) + + + + A8 (52 x 74 mm) + A8 (52 x 74 mm) + + + + B9 (44 x 62 mm) + B9 (44 x 62 mm) + + + + A9 (37 x 52 mm) + A9 (37 x 52 mm) + + + + B0 (1000 x 1414 mm) + B0 (1000 x 1414 mm) + + + + A5 (148 x 210 mm) + A5 (148 x 210 mm) + + + + Tabloid (279 x 432 mm) + Bulvární noviny/tisk (279 x 432 mm) + + + + B10 (31 x 44 mm) + B10 (31 x 44 mm) + + + + B2 (500 x 707 mm) + B2 (500 x 707 mm) + + + + &Print + &Tisk + + + + A3 (297 x 420 mm) + A3 (297 x 420 mm) + + + + Print selection + Tisk výběru + + + + Print to File (Postscript) + Tisk do souboru (Postscript) + + + + B4 (250 x 353 mm) + B4 (250 x 353 mm) + + + + %1 already exists. +Do you want to overwrite it? + Soubor %1 již existuje. +Má se přepsat? + + + + A1 (594 x 841 mm) + A1 (594 x 841 mm) + + + + Custom + Stanovený uživatelem + + + + B1 (707 x 1000 mm) + B1 (707 x 1000 mm) + + + + Folio (210 x 330 mm) + Folio (210 x 330 mm) + + + + Ledger + Hlavní (účetní) kniha + + + + Letter + Dopis + + + + DLE (110 x 220 mm) + DLE (110 x 220 mm) + + + + C5E (163 x 229 mm) + C5E (163 x 229 mm) + + + + B5 (176 x 250 mm, 6.93 x 9.84 inches) + B5 (176 x 250 mm, 6.93 x 9.84 palců + + + + Print range + Tisková oblast + + + + File exists + Soubor již existuje + + + + Write %1 file + Zapsat %1 soubor + + + + A0 (841 x 1189 mm) + A0 (841 x 1189 mm) + + + + Local file + Místní soubor + + + + locally connected + přímo spojeno + + + + Ledger (432 x 279 mm) + Hlavní (účetní) kniha (432 x 279 mm) + + + + + Aliases: %1 + Přezdívka: %1 + + + + Print to File (PDF) + Tisk do souboru (PDF) + + + + Print To File ... + Tisk do souboru... + + + + US Common #10 Envelope (105 x 241 mm) + US běžná #10 obálka (105 x 241 mm) + + + + Tabloid + Bulvární noviny + + + + A4 (210 x 297 mm, 8.26 x 11.7 inches) + A4 (210 x 297 mm, 8.26 x 11.7 palců) + + + + Executive + Prováděcí + + + + + unknown + Neznámý + + + + <qt>Do you want to overwrite it?</qt> + <qt>Chcete jej přepsat?</qt> + + + + Executive (7.5 x 10 inches, 191 x 254 mm) + Prováděcí (7,5 x 10 palců, 191 x 254 mm) + + + + Letter (8.5 x 11 inches, 216 x 279 mm) + Dopis (8,5 x 11 palců, 216 x 279 mm) + + + + The 'From' value cannot be greater than the 'To' value. + Údaj pro první stranu nesmí být větší než údaj pro poslední stranu. + + + + US Common #10 Envelope + US běžná #10 obálka + + + + %1 is a directory. +Please choose a different file name. + %1 je adresář. +Zvolte, prosím, pro soubor jiný název. + + + + File %1 is not writable. +Please choose a different file name. + Soubor %1 je chráněn proti zápisu. +Zvolte, prosím, pro soubor jiný název. + + + + B3 (353 x 500 mm) + B3 (353 x 500 mm) + + + + A7 (74 x 105 mm) + A7 (74 x 105 mm) + + + + A2 (420 x 594 mm) + A2 (420 x 594 mm) + + + + B7 (88 x 125 mm) + B7 (88 x 125 mm) + + + + QPrintPreviewDialog + + + %1% + %1% + + + + Print Preview + Náhled tisku + + + Close + Zavřít + + + + Print + Tisk + + + + Fit page + Přizpůsobit stranu + + + + Zoom in + Zvětšit + + + + Landscape + Formát na šířku + + + + Zoom out + Zmenšit + + + + Fit width + Přizpůsobit šířku + + + + Portrait + Formát na výšku + + + + + Page Setup + Nastavení strany + + + + Page setup + Nastavení strany + + + + Show overview of all pages + Ukázat přehled všech stran + + + + First page + První strana + + + + Last page + Poslední strana + + + + Show single page + Ukázat jednotlivé strany + + + + Export to PDF + Vyvést do PDF + + + + Previous page + Předchozí strana + + + + Next page + Další strana + + + + Show facing pages + Ukázat strany ležící naproti + + + + Export to PostScript + Vyvést do PostScriptu + + + + QPrintPropertiesWidget + + + Form + Formulář + + + + Page + Strana + + + + Advanced + Rozšířené + + + + QPrintSettingsOutput + + + to + do + + + + Form + Formulář + + + + None + Žádný + + + + Color + Barva + + + + Print all + Tisknout vše + + + + Selection + Výběr + + + + Long side + Dlouhá strana + + + + Copies + Počet exemplářů + + + + Print range + Tisk oblasti + + + + Color Mode + Barevný režim + + + + Options + Volby + + + + Output Settings + Nastavení výstupu + + + + Reverse + Obrácený + + + + Grayscale + Odstíny šedi + + + + Short side + Krátká strana + + + + Collate + Srovnat + + + + Copies: + Počet exemplářů: + + + + Pages from + Strany od + + + + Duplex Printing + Zdvojený tisk + + + + QPrintWidget + + + ... + ... + + + + Form + Formulář + + + + Type: + Typ: + + + + &Name: + &Název: + + + + Output &file: + Výstupní &soubor: + + + + P&roperties + &Vlastnosti + + + + Preview + Náhled + + + + Printer + Tiskárna + + + + Location: + Umístění: + + + + QProcess + + + + + Error writing to process + Zápis do procesu se nezdařil + + + + No program defined + Nestanoven žádný program + + + + Resource error (fork failure): %1 + Potíže se zdroji (selhání rozcestí - "fork failure"): %1 + + + + + + + Error reading from process + Čtení z procesu se nezdařilo + + + Process failed to start + Spuštění procesu se nezdařilo + + + + + Could not open input redirection for reading + Vstupní přesměrování se nepodařilo otevřít pro čtení + + + + + Could not open output redirection for writing + Výstupní přesměrování se nepodařilo otevřít pro zápis + + + + + + + + + + + + Process operation timed out + Překročení času u procesu + + + + Process crashed + Proces spadl + + + + Process failed to start: %1 + Proces se nepodařilo spustit: %1 + + + + QProgressDialog + + + Cancel + Zrušit + + + + QPushButton + + + Open + Otevřít + + + + QRadioButton + + + Check + Označit křížkem + + + + QRegExp + + + bad lookahead syntax + nesprávná syntax pro plánování dopředu + + + + no error occurred + žádná chyba + + + + missing left delim + chybějící levé vymezení + + + + bad char class syntax + nesprávná syntax pro třídu znaku + + + + disabled feature used + byla použita zakázaná vlastnost + + + + invalid octal value + neplatná osmičková hodnota + + + + invalid interval + neplatný interval + + + + invalid category + neplatná skupina + + + + bad repetition syntax + nesprávná syntax pro opakování + + + + met internal limit + dosažena vnitřní mez + + + + unexpected end + neočekávaný konec + + + + QSQLite2Driver + + + Unable to commit transaction + Transakci se nepodařilo provést (operace 'commit', odeslání, se nezdařila) + + + Error to open database + Nepodařilo se otevřít spojení s datatabází + + + Unable to rollback Transaction + Transakci se nepodařilo zvrátit (operace 'rollback', zvrácení, se nezdařila) + + + + Unable to begin transaction + Transakci se nepodařilo spustit + + + + Error opening database + Nepodařilo se otevřít spojení s databází + + + + Unable to rollback transaction + Transakci se nepodařilo zvrátit (operace 'rollback', zvrácení, se nezdařila) + + + + QSQLite2Result + + + Unable to execute statement + Příkaz se nepodařilo provést + + + + Unable to fetch results + Výsledek se nepodařilo natáhnout + + + + QSQLiteDriver + + + Unable to commit transaction + Transakci se nepodařilo provést (operace 'commit', odeslání, se nezdařila) + + + + Error closing database + Nepodařilo se uzavřít spojení s datatabází + + + + Error opening database + Nepodařilo se otevřít spojení s databází + + + + Unable to rollback transaction + Transakci se nepodařilo zvrátit (operace 'rollback', zvrácení, se nezdařila) + + + + Unable to begin transaction + Transakci se nepodařilo spustit + + + + QSQLiteResult + + + + + Unable to fetch row + Řádek se nepodařilo natáhnout + + + + No query + Žádný požadavek + + + + Unable to execute statement + Příkaz se nepodařilo provést + + + + Unable to bind parameters + Parametry se nepodařilo spojit + + + + Unable to reset statement + Příkaz se nepodařilo znovu nastavit + + + + Parameter count mismatch + Počet parametrů není správný + + + + QScriptBreakpointsModel + + + ID + ID + + + + Location + Umístění + + + + Condition + Podmínka + + + + Ignore-count + Spustit po + + + + Single-shot + Spustit jednou + + + + Hit-count + Spuštěný + + + + QScriptBreakpointsWidget + + + New + Nový + + + + Delete + Smazat + + + + QScriptDebugger + + + + Go to Line + Jít na řádek + + + + Line: + Řádek: + + + + Interrupt + Přerušit + + + + Shift+F5 + Shift+F5 + + + + Continue + Pokračovat + + + + F5 + F5 + + + + Step Into + Krok do + + + + F11 + F11 + + + + Step Over + Krok přes + + + + F10 + F10 + + + + Step Out + Krok ven + + + + Shift+F11 + Shift+F11 + + + + Run to Cursor + Provést po kurzor + + + + Ctrl+F10 + Ctrl+F10 + + + + Run to New Script + Provést po nový skript + + + + Toggle Breakpoint + Přepnout bod přerušení (zastavení) + + + + F9 + F9 + + + + Clear Debug Output + Smazat výstup ladění + + + + Clear Error Log + Smazat výstupní zápis s chybami + + + + Clear Console + Smazat konzoli + + + + &Find in Script... + &Hledat ve skriptu... + + + + Ctrl+F + Ctrl+F + + + + Find &Next + Najít &další + + + + F3 + F3 + + + + Find &Previous + Najít &předchozí + + + + Shift+F3 + Shift+F3 + + + + Ctrl+G + Ctrl+G + + + + Debug + Ladit + + + + QScriptDebuggerCodeFinderWidget + + + Close + Zavřít + + + + Previous + Předchozí + + + + Next + Další + + + + Case Sensitive + Rozlišující velká a malá písmena + + + + Whole words + Celá slova + + + + <img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Search wrapped + <img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Hledání dosáhlo konce + + + + QScriptDebuggerLocalsModel + + + Name + Název + + + + Value + Hodnota + + + + QScriptDebuggerStackModel + + + Level + Úroveň + + + + Name + Název + + + + Location + Umístění + + + + QScriptEdit + + + Toggle Breakpoint + Přepnout bod zastavení + + + + Disable Breakpoint + Vypnout bod zastavení + + + + Enable Breakpoint + Zapnout bod zastavení + + + + Breakpoint Condition: + Podmínka zastavení: + + + + QScriptEngineDebugger + + + Loaded Scripts + Nahrané skripty + + + + Breakpoints + Body zastavení + + + + Stack + Zásobník + + + + Locals + Místní proměnné + + + + Console + Konzole + + + + Debug Output + Výstup ladění + + + + Error Log + Výstupní zápis s chybami + + + + Search + Hledat + + + + View + Pohled + + + + Qt Script Debugger + Qt ladění skriptů + + + + QScriptNewBreakpointWidget + + + Close + Zavřít + + + + QScrollBar + + + Top + Začátek + + + + Scroll down + Projíždět dolů + + + + Scroll here + Projíždět až sem + + + + Scroll left + Projíždět doleva + + + + Line up + O jeden řádek nahoru + + + + Line down + O jeden řádek dolů + + + + Bottom + Konec + + + + + Page up + O stranu nahoru + + + + Position + Poloha + + + + Page right + O stranu doprava + + + + Scroll up + Projíždět nahoru + + + + Scroll right + Projíždět doprava + + + + Left edge + Levý okraj + + + + + Page down + O stranu dolů + + + + Page left + O stranu doleva + + + + Right edge + Pravý okraj + + + + QSharedMemory + + + + %1: doesn't exist + %1: Neexistuje + + + + %1: UNIX key file doesn't exist + %1: Soubor s unixovým klíčem neexistuje + + + + %1: system-imposed size restrictions + %1: Bylo dosaženo systémem podmíněné meze velikosti + + + %1: unix key file doesn't exists + %1: Soubor s unixovým klíčem neexistuje + + + + %1: doesn't exists + %1: Neexistuje + + + + %1: key is empty + %1: Neplatný údaj u klíče (prázdný) + + + + + %1: key error + %1: Chybný klíč + + + + %1: create size is less then 0 + %1: Údaj o velikosti vytvoření je menší než nula + + + + + + %1: already exists + %1: Již existuje + + + + + + %1: unknown error %2 + %1: Neznámá chyba %2 + + + + + %1: invalid size + %1: Neplatná velikost + + + + + + %1: unable to make key + %1: Nepodařilo se vytvořit klíč + + + + %1: unable to set key on lock + %1: Nepodařilo se nastavit klíč pro uzavření + + + + %1: unable to unlock + %1: Uzavření se nepodařilo zrušit + + + + + + %1: permission denied + %1: Přístup odepřen + + + + %1: ftok failed + %1: Vyvolání ftok se nezdařilo + + + + + + %1: out of resources + %1: Nejsou již použitelné zdroje + + + + %1: not attached + %1: Nepřipojen + + + + %1: size query failed + %1: Vyhledání velikosti se nezdařilo + + + + + %1: unable to lock + %1: Uzavření se nezdařilo + + + + QShortcut + + + + + + + + + + No + Ne + + + + Up + Nahoru + + + + + Alt + Alt + + + + F%1 + F%1 + + + + Del + Delete + + + + End + End + + + + Esc + Esc + + + + Ins + Insert + + + + Tab + Tab + + + + Yes + Ano + + + + Back + Zpět + + + + Call + Volání + + + + + Ctrl + Ctrl + + + + Down + Dolů + + + + Flip + Obrátit + + + + Help + Nápověda + + + + Home + Home + + + + Left + Vlevo + + + + Menu + Menu + + + + + Meta + Meta + + + + PgUp + PgUp + + + + Stop + Stop + + + + Enter + Enter + + + + Pause + Pause + + + + Print + Print + + + + Right + Vpravo + + + + + Shift + Shift + + + + Space + Mezerník + + + + Media Record + Nahrát + + + + Print Screen + Print Screen + + + + Treble Down + Výšky - + + + + Scroll Lock + Scroll Lock + + + + Volume Down + Hlasitost - + + + + Volume Mute + Ztlumit hlasitost + + + + Media Previous + Předchozí + + + + Home Page + Domovská stránka + + + + Volume Up + Hlasitost + + + + + Launch (6) + Spustit (6) + + + + Launch (7) + Spustit (7) + + + + Launch (8) + Spustit (8) + + + + Launch (9) + Spustit (9) + + + + Launch (2) + Spustit (2) + + + + Launch (3) + Spustit (3) + + + + Launch (4) + Spustit (4) + + + + Launch (5) + Spustit (5) + + + + Launch (0) + Spustit (0) + + + + Launch (1) + Spustit (1) + + + + Launch (F) + Spustit (F) + + + + Launch (B) + Spustit (B) + + + + Launch (C) + Spustit (C) + + + + Launch (D) + Spustit (D) + + + + Launch (E) + Spustit (E) + + + + Launch (A) + Spustit (A) + + + + Delete + Delete + + + + Escape + Escape + + + + Hangup + Pověsit + + + + Insert + Insert + + + + Bass Boost + Zesílení basů + + + + PgDown + PgDown + + + + Return + Return + + + + Search + Hledat + + + + Select + Vybrat + + + + SysReq + SysReq + + + + NumLock + NumLock + + + + ScrollLock + ScrollLock + + + + Context1 + Kontext1 + + + + Context2 + Kontext2 + + + + Context3 + Kontext3 + + + + Context4 + Kontext4 + + + + Page Up + Page Up + + + + Open URL + Otevřít URL + + + + Caps Lock + Caps Lock + + + + System Request + Žádost systému + + + + CapsLock + CapsLock + + + + Backtab + Zpět-Tab + + + + Bass Up + Basy + + + + + Refresh + Obnovit + + + + Launch Mail + Spustit e-mail + + + + Backspace + Backspace + + + + Bass Down + Basy - + + + + Standby + V pohotovosti + + + + Treble Up + Výšky + + + + + Num Lock + Num Lock + + + + Number Lock + Zahlen-Feststelltaste + + + + Favorites + Oblíbené + + + + Forward + Dopředu + + + + Page Down + Obraz dolů + + + + Media Play + Přehrávání + + + + Media Stop + Zastavit přehrávání + + + + Media Next + Další + + + + Launch Media + Spustit přehrávač + + + + QSlider + + + Page up + O stranu nahoru + + + + Position + Poloha + + + + Page right + O stranu doprava + + + + Page down + O stranu dolů + + + + Page left + O stranu doleva + + + + QSocks5SocketEngine + + + Network operation timed out + Časový limit pro síťovou operaci byl překročen + + + + Connection to proxy closed prematurely + Proxy server předčasně ukončil spojení + + + + Proxy authentication failed: %1 + Autentizace u proxy serveru se nezdařila: %1 + + + + Proxy authentication failed + Autentizace u proxy serveru se nezdařila + + + + General SOCKSv5 server failure + Všeobecná chyba při spojení s SOCKSv5 serverem + + + + Unknown SOCKSv5 proxy error code 0x%1 + Byl obdržen neznámý chybový kód od SOCKSv5 proxy serveru: 0x%1 + + + + Connection not allowed by SOCKSv5 server + SOCKSv5 server odmítl spojení + + + + SOCKSv5 command not supported + Tento SOCKSv5 příkaz není podporován + + + + Connection to proxy timed out + Při spojení s proxy serverem byl překročen časový limit + + + + Proxy host not found + Proxy server se nepodařilo najit + + + + TTL expired + TTL uplynul + + + + Address type not supported + Tento typ adresy není podporován + + + + Connection to proxy refused + Proxy server odmítl navázání spojení + + + + SOCKS version 5 protocol error + Chyba protokolu (SOCKS verze 5) + + + + QSoftKeyManager + + + Ok + OK + + + + Select + Vybrat + + + + Done + Hotovo + + + + Options + Volby + + + + Cancel + Zrušit + + + + Exit + Ukončit + + + + QSpinBox + + + Less + Méně + + + + More + Více + + + + QSql + + + + + No + Ne + + + + + + Yes + Ano + + + + Cancel + Zrušit + + + + Delete + Delete + + + + Insert + Vložit + + + + Update + Obnovit + + + + Delete this record? + Smazat tento zápis? + + + + Save edits? + Uložit změny? + + + + Confirm + Potvrdit + + + + Cancel your edits? + Zrušit změny? + + + + QSslSocket + + + Error creating SSL session: %1 + Nepodařilo se vytvořit sezení SSL: %1 + + + + Error creating SSL session, %1 + Nepodařilo se vytvořit sezení SSL, %1 + + + + Cannot provide a certificate with no key, %1 + Bez klíče nelze poskytnout žádné osvědčení k volnému použití, %1 + + + + Unable to write data: %1 + Data se nepodařilo zapsat: %1 + + + + Error during SSL handshake: %1 + Během startu SSL protokolu se vyskytla chyba: %1 + + + + Error loading local certificate, %1 + Nepodařilo se nahrát místní osvědčení, %1 + + + + Invalid or empty cipher list (%1) + Neplatný či prázdný seznam se šifrovacími klíči (%1) + + + + Private key does not certificate public key, %1 + Vystavení osvědčení k veřejnému klíči přes soukromý klíč se nezdařilo, %1 + + + + Error creating SSL context (%1) + Nepodařilo se vytvořit žádný kontext SSL (%1) + + + + Error while reading: %1 + Při čtení se vyskytla chyba: %1 + + + + Error loading private key, %1 + Soukromý klíč se nepodařilo nahrát, %1 + + + + QStateMachine + + + Missing initial state in compound state '%1' + Chybí počáteční stav složeného stavu '%1' + + + + Missing default state in history state '%1' + Chybí výchozí stav ve vývoji stavu '%1' + + + + No common ancestor for targets and source of transition from state '%1' + Cíl a zdroj přechodu ze stavu '%1' nemají žádný společný původ + + + + Unknown error + Neznámá chyba + + + + QSystemSemaphore + + + %1: does not exist + %1: Neexistuje + + + + %1: already exists + %1: Již existuje + + + + + %1: unknown error %2 + %1: Neznámá chyba %2 + + + + + %1: permission denied + %1: Přístup odepřen + + + + + %1: out of resources + %1: Nejsou již použitelné zdroje + + + + QTDSDriver + + + Unable to open connection + Nepodařilo se otevřít spojení s databází + + + + Unable to use database + Datatbázi se nepodařilo použít + + + + QTabBar + + + Scroll Left + Projíždět doleva + + + + Scroll Right + Projíždět doprava + + + + QTcpServer + + + Operation on socket is not supported + Tato zásuvková (socket) operace není podporována + + + + QTextControl + + + Cu&t + Vyj&mout + + + + &Copy + &Kopírovat + + + + &Redo + &Znovu + + + + &Undo + &Zpět + + + + &Paste + &Vložit + + + + Delete + Smazat + + + + Select All + Vybrat vše + + + + Copy &Link Location + &Kopírovat adresu odkazu + + + + QToolButton + + + + Open + Otevřít + + + + + Press + Stisknout + + + + QUdpSocket + + + This platform does not support IPv6 + Tato patforma nepodpotuje IPv6 + + + + QUndoGroup + + + Redo + Znovu + + + + Undo + Zpět + + + + QUndoModel + + + <empty> + <prázdný> + + + + QUndoStack + + + Redo + Znovu + + + + Undo + Zpět + + + + QUnicodeControlCharacterMenu + + + RLE Start of right-to-left embedding + RLE Začátek zapuštění zprava doleva (right-to-left embedding) + + + + ZWSP Zero width space + ZWSP Prostor s nulovou šířkou (Zero width space) + + + + Insert Unicode control character + Vložit kontrolní znak Unicode + + + + LRO Start of left-to-right override + LRO Začátek zrušení zleva doprava (left-to-right override) + + + + LRE Start of left-to-right embedding + LRE Začátek zapuštění zleva doprava (right-to-left embedding) + + + + RLM Right-to-left mark + RLM Značka zprava doleva (Right-to-left mark) + + + + PDF Pop directional formatting + PDF Vsunout směrové formátování (Pop directional formatting) + + + + ZWNJ Zero width non-joiner + ZWNJ Nespojovač s nulovou šířkou (Zero width non-joiner) + + + + RLO Start of right-to-left override + RLO Začátek zrušení zprava doleva (right-to-left override) + + + + ZWJ Zero width joiner + ZWJ Spojovač s nulovou šířkou (Zero width joiner) + + + + LRM Left-to-right mark + LRM Značka zleva doprava (Left-to-right mark) + + + + QWebFrame + + + Request blocked + Požadavek byl odmítnut + + + + Request cancelled + Požadavek byl zrušen + + + + Cannot show URL + Adresu (URL) nelze ukázat + + + + Frame load interrupted by policy change + Nahrání rámce bylo přerušeno změnou směrnice + + + Frame load interruped by policy change + Nahrání rámce bylo přerušeno změnou směrnice + + + + File does not exist + Soubor neexistuje + + + + Cannot show mimetype + Tento mime typ nelze ukázat + + + + QWebPage + + Cut + Vyjmout + + + LTR + Zleva doprava + + + RTL + Zprava doleva + + + + Top + Začátek + + + Bold + Tučné + + + Copy + Kopírovat + + + Stop + Ukončit + + + Open Frame + Otevřít rámec + + + Open Image + Vyobrazení otevřít v novém okně + + + Fonts + Písma + + + Paste + Vložit + + + Reset + Vrátit + + + Inspect + Provést prohlídku + + + + Select to the start of the block + Vybrat až po začátek bloku + + + + Move the cursor to the end of the block + Ukazatel polohy posunout až na konec bloku + + + + JavaScript Alert - %1 + Upozornění od JavaScriptu - %1 + + + + JavaScript Confirm - %1 + Potvrzení od JavaScriptu - %1 + + + + JavaScript Prompt - %1 + Výzva od JavaScriptu - %1 + + + + JavaScript Problem - %1 + Potíže s JavaScriptem - %1 + + + + The script on this page appears to have a problem. Do you want to stop the script? + Vypadá to na to, že skript na této straně má potíže. Chcete tento skript zastavit? + + + + Select all + Vybrat vše + + + + Select to the start of the line + Vybrat až po začátek řádku + + + + Insert a new paragraph + Vložit nový odstavec + + + + Insert a new line + Vložit nový řádek + + + + Paste and Match Style + Vložit a odpovídat stylu + + + + Remove formatting + Odstranit formátování + + + + Strikethrough + Přeškrtnuto + + + + Subscript + Dolní index + + + + Superscript + Horní index + + + + Insert Bulleted List + Vložit seznam s odrážkami + + + + Insert Numbered List + Vložit číslovaný seznam + + + + Indent + Odsadit + + + + Outdent + Zrušit odsazení + + + + Center + Na střed + + + + Justify + Do bloku + + + + Align Left + Zarovnat vlevo + + + + Align Right + Zarovnat vpravo + + + Look Up In Dictionary + Podívat se do slovníku + + + Search The Web + Hledat na síti + + + Check Spelling While Typing + Kontrolovat pravopis během psaní + + + Add To Dictionary + Přidat do slovníku + + + + Delete to the start of the word + Smazat až po začátek slova + + + Recent searches + Dosavadní hledané výrazy + + + + Move the cursor to the next word + Ukazatel polohy posunout k následujícímu slovu + + + + Move the cursor to the next line + Ukazatel polohy posunout k následujícímu řádku + + + + Scroll down + Projíždět dolů + + + + Scroll here + Projíždět až sem + + + + Scroll left + Projíždět doleva + + + + Move the cursor to the start of the block + Ukazatel polohy posunout na začátek bloku + + + Text Direction + Směr psaní + + + + Bottom + Konec + + + Ignore + Nevšímat si + + + Italic + Kurzívní + + + + Move the cursor to the end of the line + Ukazatel polohy posunout na konec řádku + + + + Move the cursor to the start of the line + Ukazatel polohy posunout na začátek řádku + + + Reload + Nahrát znovu + + + Submit + Poslat + + + + Web Inspector - %2 + Web Inspektor - %2 + + + + Page up + O stranu nahoru + + + Spelling + Pravopis + + + Outline + Obrys + + + Check Grammar With Spelling + Kontrolovat mluvnici společně s pravopisem + + + No file selected + Nebyl vybrán žádný soubor + + + + Submit + default label for Submit buttons in forms on web pages + Poslat + + + + Reset + default label for Reset buttons in forms on web pages + Vrátit + + + + This is a searchable index. Enter search keywords: + text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index' + Tento rejstřík má funkci hledání. Zadejte nějaký hledaný výraz: + + + + Choose File + title for file button used in HTML forms + Vybrat soubor + + + + No file selected + text to display in file button used in HTML forms when no file is selected + Nebyl vybrán žádný soubor + + + + Open in New Window + Open in New Window context menu item + Otevřít v novém okně + + + + Save Link... + Download Linked File context menu item + Uložit odkaz... + + + + Copy Link + Copy Link context menu item + Kopírovat adresu odkazu + + + + Open Image + Open Image in New Window context menu item + Vyobrazení otevřít v novém okně + + + + Save Image + Download Image context menu item + Uložit vyobrazení + + + + Copy Image + Copy Link context menu item + Kopírovat vyobrazení + + + + Open Frame + Open Frame in New Window context menu item + Otevřít rámec + + + + Copy + Copy context menu item + Kopírovat + + + + Go Back + Back context menu item + Jít zpět + + + + Go Forward + Forward context menu item + Jít dopředu + + + + Stop + Stop context menu item + Zastavit + + + + Reload + Reload context menu item + Nahrát znovu + + + + Cut + Cut context menu item + Vyjmout + + + + Paste + Paste context menu item + Vložit + + + + No Guesses Found + No Guesses Found context menu item + Nebyly nalezeny žádné návrhy + + + + Ignore + Ignore Spelling context menu item + Přehlížet + + + + Add To Dictionary + Learn Spelling context menu item + Přidat do slovníku + + + + Search The Web + Search The Web context menu item + Hledat na síti + + + + Look Up In Dictionary + Look Up in Dictionary context menu item + Podívat se do slovníku + + + + Open Link + Open Link context menu item + Otevřít adresu odkazu + + + + Ignore + Ignore Grammar context menu item + Přehlížet + + + + Spelling + Spelling and Grammar context sub-menu item + Pravopis + + + + Show Spelling and Grammar + menu item title + Ukázat pravopis a mluvnici + + + + Hide Spelling and Grammar + menu item title + Skrýt pravopis a mluvnici + + + + Check Spelling + Check spelling context menu item + Ověření pravopisu + + + + Check Spelling While Typing + Check spelling while typing context menu item + Ověřovat pravopis během psaní + + + + Check Grammar With Spelling + Check grammar with spelling context menu item + Ověřovat mluvnici společně s pravopisem + + + + Fonts + Font context sub-menu item + Písma + + + + Bold + Bold context menu item + Tučné + + + + Italic + Italic context menu item + Kurzíva + + + + Underline + Underline context menu item + Podtržení + + + + Outline + Outline context menu item + Obrys + + + + Direction + Writing direction context sub-menu item + Směr + + + + Text Direction + Text direction context sub-menu item + Směr psaní + + + + Default + Default writing direction context menu item + Výchozí + + + + Left to Right + Left to Right context menu item + Zleva doprava + + + + Right to Left + Right to Left context menu item + Zprava doleva + + + + Loading... + Media controller status message when the media is loading + Nahrává se... + + + + Live Broadcast + Media controller status message when watching a live broadcast + Živý přenos + + + + Audio Element + Media controller element + Zvukový prvek + + + + Video Element + Media controller element + Videoprvek + + + + Mute Button + Media controller element + Tlačítko pro ztlumení + + + + Unmute Button + Media controller element + Tlačítko pro zrušení ztlumení + + + + Play Button + Media controller element + Tlačítko pro přehrávání + + + + Pause Button + Media controller element + Tlačítko pro pozastavení + + + + Slider + Media controller element + Posuvník + + + + Slider Thumb + Media controller element + Palec posuvníku + + + + Rewind Button + Media controller element + Tlačítko pro přetočení + + + + Return to Real-time Button + Media controller element + Tlačítko pro návrat ke skutečnému času + + + + Elapsed Time + Media controller element + Uplynulý čas + + + + Remaining Time + Media controller element + Zbývající čas + + + + Status Display + Media controller element + Údaj o stavu + + + + Fullscreen Button + Media controller element + Tlačítko pro zobrazení na celou obrazovku + + + + Seek Forward Button + Media controller element + Tlačítko pro hledání dopředu + + + + Seek Back Button + Media controller element + Tlačítko pro hledání dozadu + + + + Audio element playback controls and status display + Media controller element + Řízení přehrávání zvuku a zobrazení stavu + + + + Video element playback controls and status display + Media controller element + Řízení přehrávání videa a zobrazení stavu + + + + Mute audio tracks + Media controller element + Ztlumit zvukové stopy + + + + Unmute audio tracks + Media controller element + Zrušit ztlumení zvukových stop + + + + Begin playback + Media controller element + Začít přehrávání + + + + Pause playback + Media controller element + Pozastavit přehrávání + + + + Movie time scrubber + Media controller element + Čas přehrávání + + + + Movie time scrubber thumb + Media controller element + Palec pro nastavení času přehrávání + + + + Rewind movie + Media controller element + Přetočit film zpět + + + + Return streaming movie to real-time + Media controller element + Vrátit film na skutečný čas + + + + Current movie time + Media controller element + Čas přehrávání filmu + + + + Remaining movie time + Media controller element + Zbývající čas z přehrávání filmu + + + + Current movie status + Media controller element + Stav filmu + + + + Play movie in full-screen mode + Media controller element + Přehrávat film v režimu zobrazení na celou obrazovku + + + + Seek quickly back + Media controller element + Rychlé zpětné hledání + + + + Seek quickly forward + Media controller element + Rychlé dopředné hledání + + + + Indefinite time + Media time description + Neomezený čas + + + + %1 days %2 hours %3 minutes %4 seconds + Media time description + %1 dny %2 hodiny %3 minuty %4 sekundy + + + + %1 hours %2 minutes %3 seconds + Media time description + %1 hodiny %2 minuty %3 sekundy + + + + %1 minutes %2 seconds + Media time description + %1 minuty %2 sekundy + + + + %1 seconds + Media time description + %1 sekundy + + + LTR + Left to Right context menu item + Zleva doprava + + + RTL + Right to Left context menu item + Zprava doleva + + + + Inspect + Inspect Element context menu item + Provést prohlídku + + + + No recent searches + Label for only item in menu that appears when clicking on the search field image, when no searches have been performed + Neexistují žádné naposledy hledané výrazy + + + + Recent searches + label for first item in the menu that appears when clicking on the search field image, used as embedded menu title + Dosavadní hledané výrazy + + + + Clear recent searches + menu item in Recent Searches menu that empties menu's contents + Smazat naposledy hledané výrazy + + + + Unknown + Unknown filesize FTP directory listing item + Neznámý + + + + %1 (%2x%3 pixels) + Title string for images + %1 (%2x%3 pixelů) + + + Save Image + Uložit vyobrazení + + + Save Link... + Uložit odkaz... + + + No recent searches + Neexistují žádné naposledy hledané výrazy + + + + Page right + O stranu doprava + + + + Move the cursor to the start of the document + Ukazatel polohy posunout na začátek dokumentu + + + + Move the cursor to the next character + Ukazatel polohy posunout k následujícímu znaku + + + Copy Link + Kopírovat adresu odkazu + + + + Select to the previous line + Vybrat až po předchozí řádek + + + + Select to the previous word + Vybrat až po předchozí slovo + + + Check Spelling + Kontrola pravopisu + + + + Select to the next character + Vybrat až po následující znak + + + Show Spelling and Grammar + Ukázat pravopis a mluvnici + + + + Delete to the end of the word + Smazat až po konec slova + + + Direction + Směr + + + + Select to the end of the line + Vybrat až po začátek řádku + + + + Submit + Submit (input element) alt text for <input> elements with no alt, title, or value + Poslat + + + Choose File + Vybrat soubor + + + + Scroll up + Projíždět nahoru + + + Clear recent searches + Smazat naposledy hledané výrazy + + + + Select to the start of the document + Vybrat až po začátek dokumentu + + + Default + Výchozí + + + Underline + Podtrhnout + + + + Move the cursor to the previous character + Ukazatel polohy posunout k předchozímu znaku + + + Copy Image + Kopírovat vyobrazení + + + + Select to the end of the document + Vybrat až po konec dokumentu + + + + Select to the end of the block + Vybrat až po konec bloku + + + + Scroll right + Projíždět doprava + + + No Guesses Found + Nebyly nalezeny žádné návrhy + + + Open Link + Otevřít adresu odkazu + + + + Bad HTTP request + Neplatný požadavek HTTP + + + Unknown + Neznámý + + + + Move the cursor to the previous word + Ukazatel polohy posunout k předchozímu slovu + + + + Move the cursor to the previous line + Ukazatel polohy posunout na předchozí řádku + + + %n file(s) + %n soubor(ů) + + + + Left edge + Levý okraj + + + Go Forward + Jít dopředu + + + + Page down + O stranu dolů + + + + Page left + O stranu doleva + + + This is a searchable index. Enter search keywords: + Tento index má funkci hledání. Zadejte nějaký hledaný výraz: + + + + Select to the previous character + Vybrat až po předchozí znak + + + Go Back + Jít zpět + + + Open in New Window + Otevřít v novém okně + + + + Right edge + Pravý okraj + + + + Move the cursor to the end of the document + Ukazatel polohy posunout na konec dokumentu + + + Hide Spelling and Grammar + Skrýt pravopis a mluvnici + + + %1 (%2x%3 pixels) + %1 (%2x%3 pixelů) + + + + Select to the next word + Vybrat až po následující slovo + + + + Select to the next line + Vybrat až po následující řádek + + + + %n file(s) + number of chosen file + + %n soubor(ů) + + + + + + + QWhatsThisAction + + + What's This? + Co je toto? + + + + QWidget + + + * + * + + + + QWizard + + + Done + Hotovo + + + + Help + Nápověda + + + + &Help + &Nápověda + + + + &Next + &Další + + + + Cancel + Zrušit + + + + Commit + Použít + + + + Continue + Pokračovat + + + + &Finish + Do&končit + + + + &Next > + &Další > + + + + Go Back + Jít zpět + + + + < &Back + < &Zpět + + + + QWorkspace + + + &Move + Po&sunout + + + + &Size + Změnit &velikost + + + + Close + Zavřít + + + + Minimize + Zmenšit + + + + Stay on &Top + Zůstat v &popředí + + + + &Close + &Zavřít + + + + + %1 - [%2] + %1 - [%2] + + + + + Sh&ade + &Navinout + + + + &Restore + &Obnovit + + + + &Unshade + &Odvinout + + + + Mi&nimize + &Zmenšit + + + + Ma&ximize + Zvě&tšit + + + + Restore Down + Obnovit + + + + QXml + + + unparsed entity reference in wrong context + používán nevyhodnocený odkaz na entitu v nesprávné souvislosti + + + + external parsed general entity reference not allowed in DTD + v DTD nejsou dovoleny žádné odkazy na vnější obecnou entitu + + + + wrong value for standalone declaration + nesprávná hodnota pro samostatné prohlášení + + + + encoding declaration or standalone declaration expected while reading the XML declaration + chybějící prohlášení kódování nebo prohlášení samostatnosti při čtení prohlášení XML + + + + no error occurred + žádná chyba + + + + error occurred while parsing reference + při vyhodnocení odkazu se vyskytla chyba + + + + standalone declaration expected while reading the XML declaration + chybějící prohlášení samostatnosti při čtení prohlášení XML + + + + invalid name for processing instruction + neplatný název pro pokyn pro zpracování + + + + error triggered by consumer + chyba spuštěná spotřebitelem + + + + error occurred while parsing element + při vyhodnocení prvku se vyskytla chyba + + + + unexpected character + neočekávaný znak + + + + tag mismatch + Značky prvků nejsou vkládány správně + + + + error occurred while parsing content + při vyhodnocení obsahu se vyskytla chyba + + + + error occurred while parsing comment + při vyhodnocení poznámky se vyskytla chyba + + + + internal general entity reference not allowed in DTD + v DTD nejsou dovoleny žádné odkazy na vnitřní obecnou entitu + + + + recursive entities + rekurzivní entity + + + + more than one document type definition + více definicí typu dokumentu + + + + version expected while reading the XML declaration + chybějící verze při čtení prohlášení XML + + + + letter is expected + na tomto místě je potřeba písmeno + + + + unexpected end of file + neočekávaný konec souboru + + + + external parsed general entity reference not allowed in attribute value + v hodnotě vlastnosti nejsou dovoleny žádné odkazy na vnější obecnou entitu + + + + error in the text declaration of an external entity + Chyba v prohlášení textu vnější entity + + + + error occurred while parsing document type definition + při vyhodnocení definice typu dokumentu se vyskytla chyba + + + + QXmlStream + + + Reference to unparsed entity '%1'. + Odkaz na nevyhodnocenou entitu '%1'. + + + + Unexpected character '%1' in public id literal. + '%1' není platným znakem v údaji veřejného id, který je tvořen písmeny. + + + + + + + Illegal namespace declaration. + Neplatné prohlášení jmenného prostoru. + + + + Invalid XML character. + Neplatný znak XML. + + + + Expected character data. + Byly očekávány údaje o znacích. + + + + Standalone accepts only yes or no. + Hodnota pro samostatnou vlastnost může být pouze "ano" nebo "ne". + + + + Invalid XML version string. + Neplatný údaj o verzi XML. + + + + Invalid processing instruction name. + Název pokynu pro zpracování je neplatný. + + + + Namespace prefix '%1' not declared + Předpona jmenného prostoru '%1' nebyla prohlášena + + + + + + Entity '%1' not declared. + Entita '%1' není prohlášena. + + + + %1 is an invalid processing instruction name. + %1 není platným názvem pokynu pro zpracování. + + + + The standalone pseudo attribute must appear after the encoding. + Samostatná pseudovlastnost musí následovat bezprostředně po kódování. + + + + Sequence ']]>' not allowed in content. + Sled znaků ']]>' není v obsahu povolen. + + + + %1 is an invalid encoding name. + %1 není platným názvem pro kódování. + + + + , but got ' + očekáváno, namísto toho obdrženo ' + + + + Start tag expected. + Očekáván otevírající prvek. + + + + Invalid character reference. + Odkaz na neplatný znak. + + + + Reference to external entity '%1' in attribute value. + V hodnotě vlastnosti byla odkazována entita '%1'. + + + + Expected + Bylo + + + + Invalid document. + Neplatný dokument. + + + + Opening and ending tag mismatch. + Počet otevírajících prvků neodpovídá neodpovídá počtu zavírajících prvků. + + + + + Encountered incorrectly encoded content. + Byl nalezen obsah s neplatným kódováním. + + + + Invalid attribute in XML declaration. + Prohlášení XML obsahuje neplatnou vlastnost. + + + + Attribute redefined. + Vlastnost byla nově vymezena. + + + + %1 is an invalid PUBLIC identifier. + %1 není platným údajem VEŘEJNÉHO identifikátoru (id). + + + + + Extra content at end of document. + Přebytečný obsah za koncem dokumentu. + + + + Invalid XML name. + Neplatný název XML. + + + + Premature end of document. + Předčasný konec dokumentu. + + + + XML declaration not at start of document. + Prohlášení XML se nenachází na začátku dokumentu. + + + + Recursive entity detected. + Byla zjištěna rekurzivní entita. + + + + Unsupported XML version. + Tato verze XML není podporována. + + + + Unexpected ' + Na tomto místě neplatný ' + + + + Invalid entity value. + neplatná hodnota entity. + + + + Encoding %1 is unsupported + Kódování %1 není podporováno + + + + NDATA in parameter entity declaration. + Parametrické prohlášení entitynesmí obsahovat žádné NDATA. + + + + QtXmlPatterns + + + A comment cannot contain %1 + Poznámka nesmí obsahovat %1 + + + + Version %1 is not supported. The supported XQuery version is 1.0. + Verze %1 není podporována. Podporovanou verzí XQuery je 1.0. + + + + The root node of the second argument to function %1 must be a document node. %2 is not a document node. + Nadřízený uzel druhého agumentu funkce %1 musí být uzlem dokumentu, což není případ %2. + + + + The parameter %1 is required, but no corresponding %2 is supplied. + Nebyl zadán žádný odpovídající %2 pro potřebný parametr %1. + + + + Namespace declarations must occur before function, variable, and option declarations. + Prohlášení jmenných prostorů musí stát před prohlášeními funkcí-, proměnných- nebo prohlášeními voleb. + + + + empty + prázdný + + + + The namespace URI cannot be the empty string when binding to a prefix, %1. + Jmenný prostor-URI nesmí být prázdný, když je spojen s prefixem %1. + + + + A comment cannot end with a %1. + Poznámka nesmí končit na %1. + + + + Top level stylesheet elements must be in a non-null namespace, which %1 isn't. + Úplně nahoře stojící prvky prováděcího listu se nesmí nacházet v nulovém jmenném prostoru, což je případ %1. + + + + Integer division (%1) by zero (%2) is undefined. + Celočíselné dělení (%1) nulou (%2) není stanoveno. + + + + A library module cannot be evaluated directly. It must be imported from a main module. + Knihovní modul nemůže být posouzen přímo, musí být zaveden z hlavního modulu. + + + + Time %1:%2:%3.%4 is invalid. + Časový údaj %1:%2:%3.%4 je neplatný. + + + Attribute %1 cannot appear on the element %2. Only the standard attributes can appear. + Prvek %2 může mít pouze obvyklé vlastnosti, ne však %1. + + + + A value of type %1 must contain an even number of digits. The value %2 does not. + Počet míst hodnoty typu %1 musí být stejný. To není případ %2. + + + + Modulus division (%1) by zero (%2) is undefined. + Dělení absolutní hodnoty (%1) nulou(%2) není stanoveno. + + + + No function with signature %1 is available + Neexistuje žádná funkce označená jako %1 + + + + None of the pragma expressions are supported. Therefore, a fallback expression must be present + Musí být přítomen záložní výraz, neboť nejsou podporovány žádné věcné výrazy + + + + In the replacement string, %1 can only be used to escape itself or %2, not %3 + V nahrazení může být použit pouze %1, aby se chránil sám, nebo %2, ne však pro %3 + + + + The codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. + Kódovací bod %1 z %2 s kódováním %3 není platným znakem XML. + + + + Network timeout. + Časový limit síťové operace byl překročen. + + + No casting is possible with %1 as the target type. + Nelze provádět žádné výběrové ("cast") operace s typem %1. + + + + The Schema Import feature is not supported, and therefore %1 declarations cannot occur. + Prohlášení %1 je nepřípustné, protože není podporováno zavedení schémat. + + + + Attribute %1 and %2 are mutually exclusive. + Vlastnosti %1 a %2 se vzájemně vylučující. + + + + Parse error: %1 + Chyba vyhodnocení: %1 + + + + If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. + Nelze zadat žádnou předponu, jestliže je první argument prázdný nebo je prázdný řetězec znaků (žádný jmenný prostor). Byla zadána předpona %1. + + + + In an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. + V XSL-T vyhledávacím vzoru musí být první argument k funkci %1 při použití k hledání odkaz tvořený písmeny nebo proměnný. + + + + + At least one component must be present. + Alespoň jedna součást musí být přítomna. + + + In a namespace constructor, the value for a namespace value cannot be an empty string. + Ve staviteli jmenného prostoru nesmí mýt hodnota jmenného prostoru prázdným řetězcem. + + + + An attribute by name %1 has already been created. + Již byla vytvořena jedna vlastnost s názvem %1. + + + + An argument by name %1 has already been declared. Every argument name must be unique. + Již existuje jeden argument s názvem %1. Názvy argumentů musí být jednoznačné. + + + + %1 is an invalid flag for regular expressions. Valid flags are: + %1 není pro regulérní výrazy platným příznakem. Platnými příznaky jsou: + + + + At least one %1-element must occur inside %2. + V %2 se musí vyskytovat alespoň jeden %1-prvek. + + + + Only the Unicode Codepoint Collation is supported(%1). %2 is unsupported. + Je podporován pouze Unicode Codepoint Collation (%1). %2 není podporován. + + + + Matches are case insensitive + Na psaní velkých/malých písmen není brán zřetel + + + + The name of an extension expression must be in a namespace. + Název výrazu rozšíření se musí nacházet ve jmenném prostoru. + + + + Each name of a template parameter must be unique; %1 is duplicated. + Názvy parametrů předloh musí být jednoznačné, %1 již existuje. + + + + At least one mode must be specified in the %1-attribute on element %2. + Ve %1-vlastnosti prvku %2 musí být zadán alespoň jeden způsob. + + + + %1 matches newline characters + Výraz '%1' odpovídá znakům pro nový řádek + + + + Year %1 is invalid because it begins with %2. + %1 není platným údajem pro rok, protože začíná %2. + + + + The second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. + Druhý argument %1 nemůže být typ %2. Musí to být typ %3, %4 nebo %5. + + + + Element %1 cannot have children. + Prvek %1 nemůže mít podprvky. + + + Attribute %1 cannot appear on the element %2. Only %3 is allowed, and the standard attributes. + Prvek %2 může mít jen vlastnost %3 nebo vlastnosti, které jsou obvyklé, ne však %1. + + + + Only one %1-element can appear. + Může být jen jeden jediný %1-prvek. + + + + The name for a computed attribute cannot have the namespace URI %1 with the local name %2. + Název počítané vlastnosti nesmí mít jmenný prostor-URI %1 s místním názvem %2. + + + + A positional predicate must evaluate to a single numeric value. + Poziční přísudek se musí vyhodnotit jako jednoduchá, číselná hodnota. + + + + Element %1 can't be serialized because it appears outside the document element. + Prvek %1 nemůže být vydáván na pokračování, protože se objevuje mimo prvky dokumentu. + + + + %1 and %2 match the start and end of a line. + Výrazy %1 a %2 vždy odpovídají začátku nebo konci libovolného řádku. + + + + Running an XSL-T 1.0 stylesheet with a 2.0 processor. + Je zpracováván jeden XSL-T 1.0 stylový list jedním procesorem verze 2.0. + + + + A stylesheet function must have a prefixed name. + Název funkce stylového listu musí mít předponu. + + + + %1 cannot be retrieved + %1 nelze určit + + + It's not possible to cast the value %1 of type %2 to %3 + Nelze provést operaci předvedení hodnoty %1 typu %2 k %3 + + + + The value of the XSL-T version attribute must be a value of type %1, which %2 isn't. + Hodnota XSL-T vlastnosti verze musí být hodnotou typu %1, což není případ %2. + + + + In a namespace constructor, the value for a namespace cannot be an empty string. + Ve staviteli jmenného prostoru nesmí mýt hodnota jmenného prostoru prázdným řetězcem. + + + + The prefix %1 cannot be bound. + Předponu %1 nelze spojit. + + + + The prefix must be a valid %1, which %2 is not. + Předpona musí být platný %1, což není případ %2. + + + + The keyword %1 cannot occur with any other mode name. + Klíčové slovo %1 se nemůže používat dohromady s jiným názvem způsobu. + + + + Type error in cast, expected %1, received %2. + Chyba psaní u operace předvedení, bylo očekáváno %1, ale přijato %2. + + + + %1 is not a valid numeric literal. + %1 není platný číselný údaj tvořený písmeny. + + + + %1 takes at most %n argument(s). %2 is therefore invalid. + + %1 má jen %n argument; údaj %2 z tohoto důvodu neplatný. + %1 má jen %n argumenty; údaj %2 z tohoto důvodu neplatný. + %1 má jen %n argumenty; údaj %2 z tohoto důvodu neplatný. + + + + Circularity detected + byla zjištěna cirkulární závislost + + + + A variable by name %1 has already been declared. + Proměnná s názvem %1 již byla prohlášena. + + + + The prefix %1 can not be bound. By default, it is already bound to the namespace %2. + Předpona %1 nemůže být spojena. Ve výchozím nastavení je již spojena se jmenným prostorem %2. + + + An %1-attribute must have a valid %2 as value, which %3 isn't. + Vlastnost s názvem %1 musí mít platnou %2-hodnotu. %3 není platnou hodnotou. + + + + If element %1 has no attribute %2, it cannot have attribute %3 or %4. + Prvek %1 nesmí mít vlastnost %3 nebo %4, pokud nemá vlastnost %2. + + + + A function already exists with the signature %1. + Již existuje funkce s podpisem %1. + + + + When casting to %1 from %2, the source value cannot be %3. + U operace předvedení z %1 do %2 nesmí být zdrojová hodnota %3. + + + + Attribute %1 can't be serialized because it appears at the top level. + Vlastnost %1 nemůže být vydáván na pokračování, protože se objevuje na nejvyšší rovině. + + + No comparisons can be done involving the type %1. + S typem %1 nemohou být prováděny žádné srovnávací operace. + + + + No value is available for the external variable by name %1. + Pro vnější proměnnou s názvem %1 není dostupná žádná hodnota. + + + + The value of attribute %1 must of type %2, which %3 isn't. + Hodnota vlastnosti %1 musí být typu %2. %3 není platnou hodnotou. + + + + The item %1 did not match the required type %2. + Prvek %1 neodpovídá požadovanému typu %2. + + + + Element %1 cannot have a sequence constructor. + Prvek %1 nemůže mít stavitele posloupnosti. + + + + When attribute %1 is present on %2, a sequence constructor cannot be used. + Nelze používat žádného stavitele posloupnosti, když %2 má vlastnost %1. + + + + one or more + jeden nebo více + + + + The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. + Kódování %1 je neplatné; smí sestávat pouze z latinských písmen a musí odpovídat pravidelnéu výrazu %2. + + + + %1 requires at least %n argument(s). %2 is therefore invalid. + + %1 vyžaduje alespoň %n argument; údaj %2 je z toho důvodu neplatný. + %1 vyžaduje alespoň %n argumenty; údaj %2 je z toho důvodu neplatný. + %1 vyžaduje alespoň %n argumenty; údaj %2 je z toho důvodu neplatný. + + + + + The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, is %2 invalid. + %2 není platným cílovým názvem pokynu pro zpracování, protože tento nesmí být %1 (nehledě na psaní velkých/malých písmen). + + + + The focus is undefined. + Není stanoveno ohnisko. + + + + + %1 is an unknown schema type. + %1 je neznámým typem schematu. + + + + The value for attribute %1 on element %2 must either be %3 or %4, not %5. + Hodnota vlastnosti %1 prvku %2 může být jen %3 nebo %4, ne však %5. + + + + In the replacement string, %1 must be followed by at least one digit when not escaped. + V nahrazovacím řetězci musí po %1 následovat alespoň jedna číslice, když není chráněn znakem Escape. + + + + In an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. + V XSL-T vyhledávacím vzoru se smějí používat jen osy %2 nebo %3, ne však %1. + + + + The namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) + Jmenný prostor uživatelem stanovené funkce nesmí být prázdný (pro tento účel je předstanovená předpona %1) + + + The first operand in an integer division, %1, cannot be infinity (%2). + První veličina, operand, celočíselného dělení %1 nesmí být nekonečno (%2). + + + + %1 is not a valid value of type %2. + %1 není platnou hodnotou typu %2. + + + + Multiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. + Násobení hodnoty typu %1 s %2 nebo %3 (kladné nebo záporné nekonečno) není přípustné. + + + + The variable %1 is unused + Proměnná %1 se nepoužívá + + + + The %1-axis is unsupported in XQuery + Osa %1 není v XQuery podporována + + + + A direct element constructor is not well-formed. %1 is ended with %2. + Byl nalezen chybný stavitel přímého prvku. %1 končí %2. + + + + Dividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. + Dělení hodnoty typu %1 prostřednictvím %2 nebo %3 (kladná nebo záporná nula) není přípustné. + + + + Attribute %1 cannot have the value %2. + Vlastnost %1 nesmí mít hodnotu %2. + + + + It will not be possible to retrieve %1. + %1 nelze určit. + + + + In an XSL-T pattern, function %1 cannot have a third argument. + V XSL-T vyhledávacím vzoru nesmí mít funkce %1 třetí argument. + + + + The namespace URI in the name for a computed attribute cannot be %1. + URI jmenného prostoru v názvu vypočítané vlastnosti nesmí být %1. + + + + %1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. + %1 není platným cílovým názvem pokynu pro zpracování. Musí to být hodnota %2 jakou je například %3. + + + + %1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. + %1 je složeným typem. Operace předvedení u složených typů není možná. Mohou se ovšem provádět operace obsazení u atomárních typů jako %2. + + + + zero or one + žádný nebo jeden + + + No operand in an integer division, %1, can be %2. + U celočíselného dělení %1 nesmí být veličina, operand, %2. + + + The element with local name %1 does not exist in XSL-T. + V XSL-T neexistuje žádný prvek s místním názvem %1. + + + + Two namespace declaration attributes have the same name: %1. + Byly nalezeny dvě vlastnosti prohlášení jmenného prostoru se stejným názvem (%1). + + + + Effective Boolean Value cannot be calculated for a sequence containing two or more atomic values. + Skutečná Booleanská hodnota nemůže být vypočítána pro posloupnost ze dvou nebo více atomárních hodnot. + + + + + %1 is an invalid %2 + %1 je neplatný %2 + + + + The first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. + První argument k %1 nesmí být typu %2; musí to být číselný typ, xs:yearMonthDuration nebo xs:dayTimeDuration. + + + + Division (%1) by zero (%2) is undefined. + Dělení (%1) nulou (%2) není stanoveno. + + + + No template by name %1 exists. + Neexistuje žádná předloha s názvem %1. + + + The attribute %1 must appear on element %2. + Prvek %2 musí mít vlastnost %1. + + + + An attribute by name %1 has already appeared on this element. + Prvek má již vlastnost s názvem %1. + + + + The default collection is undefined + Pro sbírku není stanovena žádná předloha + + + + Only the prefix %1 can be bound to %2 and vice versa. + S %2 může být spojena pouze předpona %1 (a obráceně). + + + + Value %1 of type %2 exceeds maximum (%3). + Hodnota %1 typu %2 překračuje maximum (%3). + + + + Whitespace characters are removed, except when they appear in character classes + Prázdné znaky jsou odstraněny v případě, že se neobjeví ve znakových třídách + + + Casting to %1 is not possible because it is an abstract type, and can therefore never be instantiated. + Nemohou se provádět žádné operace předvedení k typu %1, protože je to abstraktní typ ist a nelze je doložit příkladem. + + + + Operator %1 cannot be used on type %2. + Operátor %1 nelze použít na typ %2. + + + + The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. + Jmenný prostor %1 je vyhrazen a z toho důvodu jej nemohou používat uživatelem stanovené funkce (pro tento účel je tu předstanovená předpona %2). + + + + The target namespace of a %1 cannot be empty. + Cílový jmenný prostor %1 nesmí být prázdný. + + + + %1 must be followed by %2 or %3, not at the end of the replacement string. + Po %1 musí následovat %2 nebo %3; nesmí se objevit na konci nahrazovacího řetězce. + + + + %1 is an invalid namespace URI. + %1 není platným jmenným prostorem-URI. + + + + + The attribute %1 cannot appear on %2, when it is a child of %3. + %2 nesmí mít vlastnost %1 v případě, že je potomkem %3. + + + + The attribute %1 can only appear on the first %2 element. + Pouze první %2-prvek smí mít vlastnost %1. + + + + Element %1 must have either a %2-attribute or a sequence constructor. + Prvek %1 musí mít buď jednu %2-vlastnost nebo se musí používat stavitel posloupnosti. + + + + Module imports must occur before function, variable, and option declarations. + Zavedení modulů musí nastat před prohlášeními funkcí, proměnných a voleb. + + + + Day %1 is outside the range %2..%3. + Údaj dne %1 je mimo rozsah %2..%3. + + + + %1 contains octets which are disallowed in the requested encoding %2. + %1 obsahuje oktety, které v kódování %2 nejsou přípustné. + + + + When a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. + Výchozí hodnota požadovaného parametru nemůže být zadána ani prostřednictvím %1-vlastnosti ani přes stavitele posloupnosti. + + + + In an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. + V XSL-T vyhledávacím vzoru musí být první argument k funkci %1 při použití k hledání řetězec tvořený písmeny. + + + + Text nodes are not allowed at this location. + Na tomto místě nesmí stát žádné textové uzly. + + + + A value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. + Hodnoty typu %1 nesmí ýt přísudkem. Pro přísudky jsou přípustné pouze typ číselný nebo účinný booleánský. + + + + %1 is not a valid name for a processing-instruction. + %1 není platným názvem pokynu pro zpracování. + + + + %1 was called. + %1 byl volán. + + + + It's not possible to add attributes after any other kind of node. + Vlastnosti nesmí následovat za jinými druhy uzlů. + + + + At least one %1-element must occur before %2. + Před %2 musí stát alespoň jeden %1-prvek. + + + + The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). + Tato forma normalizování %1 není podporována. Podporovanými formami normalizování jsou %2, %3, %4 a %5, a "žádný" (prázdný znakový řetězec zastupuje "žádné normalizování"). + + + + When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. + U operace představení k typu %1 nebo odvozených typů musí být zdrojovou hodnotou řetězec znaků tvořený písmeny nebo hodnota stejného typu. Typ %2 je neplatný. + + + + A parameter in a function cannot be declared to be a tunnel. + Parameter funkce nelze prohlásit za tunel. + + + XSL-T attributes on XSL-T elements must be in the null namespace, not in the XSL-T namespace which %1 is. + XSL-T vlastnosti XSL-T prvku musí být v nulovém jmenném prostoru, nikoli v XSL-T jmenném prostoru, jako %1. + + + + The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 + Jmenný prostor uživatelem stanovené funkce v modulu knihovny musí odpovídat jmennému prostoru modulu (Jinými slovy by měl být %1 namísto %2) + + + + Day %1 is invalid for month %2. + Ǔdaj o dni %1 je neplatným pro měsíc %2. + + + + Overflow: Can't represent date %1. + Nelze představit datum %1 (Přetečení). + + + + In a simplified stylesheet module, attribute %1 must be present. + Ve zjednodušeném modulu stylového listu musí být přítomna vlastnost %1. + + + + Unknown XSL-T attribute %1. + Neznámá XSL-T vlastnost: %1. + + + + It is not possible to redeclare prefix %1. + Předponu %1 nelze prohlásit. + + + + exactly one + přesně jeden + + + + %1 is an invalid regular expression pattern: %2 + %1 není platným pravidelným výrazem: %2 + + + + Element %1 is not allowed at this location. + Prvek %1 nesmí stát na tomto místě. + + + + The Schema Validation Feature is not supported. Hence, %1-expressions may not be used. + %1-výrazy se nemohou používat, protože funkce prohlášení schématu platným není podporována. + + + + At least one %1 element must appear as child of %2. + Alespoň jeden %1-prvek musí být potomkem %2. + + + + This processor is not Schema-aware and therefore %1 cannot be used. + %1 se nemůže používat, protože tento procesor nepodporuje žádné schéma. + + + Attribute %1 cannot appear on the element %2. Allowed is %3, and the standard attributes. + Prvek %2 může mít jen %3 nebo obvyklé vlastnosti, ne však %1. + + + + + Dividing a value of type %1 by %2 (not-a-number) is not allowed. + Dělení hodnoty typu %1 prostřednictvím %2 (není číselnou hodnotou) není přípustné. + + + + Required cardinality is %1; got cardinality %2. + Požadované kardinální číslo (mohutnost množiny) je %1 (v současnosti %2). + + + A construct was encountered which only is allowed in XQuery. + Tento výtvor je přípustný pouze v XQuery. + + + + No function by name %1 is available. + Neexistuje žádná funkce s názvem %1. + + + + The URI cannot have a fragment + URI nesmí obsahovat kousek + + + + %1 is not an atomic type. Casting is only possible to atomic types. + %1 není atomárním typem. Operace představení se dají provádět pouze s atomárními typy. + + + The first argument to %1 cannot be of type %2. + První argument %1 nemůže být typu %2. + + + + The namespace URI must be a constant and cannot use enclosed expressions. + Jmenný prostor-URI musí být konstantou a nesmí používat vložené výrazy. + + + + Prefix %1 is already declared in the prolog. + Předpona %1 byla prohlášena již v předmluvě (prologu). + + + + Ambiguous rule match. + Víceznačné pravidlo. + + + + Promoting %1 to %2 may cause loss of precision. + Postoupení od %1 k %2 může vést ke ztrátě přesnosti. + + + + In an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. + V XSL-T vyhledávacím vzoru se smějí pro srovnávání používat jen funkce %1 a %2, ne však %3. + + + + + A default namespace declaration must occur before function, variable, and option declarations. + Prohlášení výchozích jmenných prostorů musí stát před prohlášeními funkcí-, proměnných- nebo prohlášeními voleb. + + + + Operator %1 cannot be used on atomic values of type %2 and %3. + Operátor %1 se nemůže používat u atomárních hodnot typů %2 a %3. + + + + The module import feature is not supported + Funkce zavedení modulu není podporována + + + + The parameter %1 is passed, but no corresponding %2 exists. + Neexistuje žádný odpovídající %2 pro předaný parameter %1. + + + + A value of type %1 cannot have an Effective Boolean Value. + Hodnota typu %1 nemůže mít žádnou účinnou booleánskou hodnotu. + + + + The data of a processing instruction cannot contain the string %1 + Data pokynu pro zpracování nesmí obsahovat řetězec znaků %1 + + + + Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0; + Časový údaj 24:%1:%2.%3 je neplatný. U hodinového údaje je 24, ale minuty, sekundy a milisekundy musí být všechny 0; + + + + A template by name %1 has already been declared. + Předloha s názvem %1 už byla prohlášena. + + + + It is not possible to bind to the prefix %1 + Předponu %1 nelze spojit + + + + Value %1 of type %2 is below minimum (%3). + Hodnota %1 typu %2 zůstává pod minimem (%3). + + + + Required type is %1, but %2 was found. + Požadovaný typ je %1, byl ale zadán %2. + + + + %1 is an unsupported encoding. + Kódování %1 není podporováno. + + + + The name of an option must have a prefix. There is no default namespace for options. + Název volby musí mít předponu. Pro volby není žádná předloha pro jmenný prostor. + + + + Element %1 must come last. + Prvek %1 musí stát jako poslední. + + + Attribute %1 cannot appear on the element %2. Allowed is %3, %4, and the standard attributes. + Prvek %2 může mít jen vlastnost %3, %4 nebo vlastnosti, které jsou obvyklé, ne však %1. + + + + No namespace binding exists for the prefix %1 in %2 + Neexistuje žádné svázání jmenného prostoru pro předponu %1 v %2 + + + + The name %1 does not refer to any schema type. + Název %1 nemá žádnou spojitost s jakýmkoli typem schématu. + + + + Prefix %1 can only be bound to %2 (and it is, in either case, pre-declared). + Předponu %1 lze spojit pouze s %2. Toto je prohlášeno již dopředu.. + + + + W3C XML Schema identity constraint selector + Přepínač omezení totožnosti W3C XML schéma + + + + W3C XML Schema identity constraint field + Pole omezení totožnosti W3C XML schéma + + + + A construct was encountered which is disallowed in the current language(%1). + Narazilo se na výtvor, který v nynějším jazyce není povolen (%1). + + + + The initialization of variable %1 depends on itself + Inicializace proměnné %1 je závislá na její vlastní hodnotě + + + + An attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. + Uzel vlastnosti se nesmí objevit jako potomek uzlu dokumentu. Objevil se uzel vlastnosti s názvem %1, který je proto nevhodný. + + + + Month %1 is outside the range %2..%3. + Údaj o měsíci %1 je mimo rozsah %2..%3. + + + + The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. + Název proměnné úzce spojené s pro-výrazem se musí lišit od poziční proměnné. Dvě proměnné s názvem %1 se z tohoto důvodu střetávají. + + + + No namespace binding exists for the prefix %1 + Neexistuje žádné svázání jmenného prostoru pro předponu %1 + + + An %1-attribute with value %2 has already been declared. + Prvek má již jednu vlastnost s názvem %1 s hodnotou %2. + + + + %1 is not valid as a value of type %2. + %1 není platný jako hodnota typu %2. + + + + zero or more + žádný nebo více + + + + + %1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. + %1 se nenachází v oblasti pod prohlášením vlastností. Všimněte si, že funkce zavedení schématu není podporována. + + + + When function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. + Při použití funkce %1 k vyhodnocování uvnitř vyhledávacího vzoru musí být argumentem odkaz na proměnnou nebo řetězec tvořený písmeny. + + + + %1 is an invalid template mode name. + %1 není platným názvem pro řežim předlohy. + + + + At least one time component must appear after the %1-delimiter. + Po %1-oddělovači se musí objevit alespoň jedna složka času. + + + + Overflow: Date can't be represented. + Nelze představit datum (Přetečení). + + + Operator %1 is not available between atomic values of type %2 and %3. + Operátor %1 se nemůže používat u atomárních hodnot typů %2 a %3. + + + + A zone offset must be in the range %1..%2 inclusive. %3 is out of range. + Rozdíl v časové zóně musí ležet v oblasti %1..%2 (včetně). %3 leží mimo oblast. + + + + %1 is not a valid XML 1.0 character. + %1 není platný znak XML 1.0. + + + + The first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. + První argument %1 nemůže být typu %2. Musí to být typ %3, %4 nebo %5. + + + + %1 is not a whole number of minutes. + %1 není celočíselným údajem o minutách. + + + Failure when casting from %1 to %2: %3 + Operace předvedení od %1 do %2 se nepodařila: %3 + + + It is not possible to cast from %1 to %2. + Nelze provádět žádnou operaci předvedení od %1 do %2. + + + + No variable by name %1 exists + Neexistuje žádná proměnná s názvem %1 + + + + Namespace %1 can only be bound to %2 (and it is, in either case, pre-declared). + Jmenný prostor %1 lze spojit pouze s %2. Toto je stanoveno již dopředu. + + + The second operand in a division, %1, cannot be zero (%2). + Druhá veličina, operand, dělení %1 nesmí být nula (%2). + + + + Only one %1 declaration can occur in the query prolog. + Předmluva k dotazu (prolog) smí obsahovat pouze jedno %1-prohlášení. + + + + Element %1 must have at least one of the attributes %2 or %3. + Prvek %1 musí mít alespoň jednu z vlastností %2 nebo %3. + + + + If both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. + Když jsou zadány obě hodnoty s časovými zónami, musí mít ten samý rozdíl v časové zóně. %1 a %2 nejsou to samé a jsou tím pádem nepřípustné. + + + + No external functions are supported. All supported functions can be used directly, without first declaring them as external + Nejsou podporovány vnější funkce. Všechny podporované funkce se dají používat přímo, bez toho, že by byly nejprve prohlášeny za vnější + + + + The last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. + Poslední krok cesty musí obsahovat buď jen uzly nebo jen atomární hodnoty. Nesmí se vyskytovat společně. + + + + Empty particle cannot be derived from non-empty particle. + Prázdnou částici nelze odvodit z částice, která není prázdná. + + + + Derived particle is missing element %1. + V odvozené částici chybí prvek %1. + + + + Derived element %1 is missing value constraint as defined in base particle. + V odvozeném prvku %1 chybí omezení hodnoty, jak je to stanoveno v základní částici. + + + + Derived element %1 has weaker value constraint than base particle. + Odvozený prvek %1 má slabší omezení hodnoty než má základní částice. + + + + Fixed value constraint of element %1 differs from value constraint in base particle. + Pevné omezení hodnoty prvku %1 se liší od omezení hodnoty základní částici. + + + + Derived element %1 cannot be nillable as base element is not nillable. + Odvozený prvek %1 nemůže mít žádnou vlastnost 'nillable', neboť základní prvek žádnou nestanovuje. + + + + Block constraints of derived element %1 must not be more weaker than in the base element. + Omezení bloku odvozeného prvku %1 nesmí být slabší než v základním prvku. + + + + Simple type of derived element %1 cannot be validly derived from base element. + Jednoduchý typ odvozeného prvku %1 nemůže být platně odvozen ze základního prvku. + + + + Complex type of derived element %1 cannot be validly derived from base element. + Složitý typ odvozeného prvku %1 nemůže být platně odvozen ze základního prvku. + + + + Element %1 is missing in derived particle. + Prvek %1 chybí v odvozené částici. + + + + Element %1 does not match namespace constraint of wildcard in base particle. + Prvek %1 neodpovídá omezení jmenného prostoru zástupného symbolu (vzor hledání) v základní částici. + + + + Wildcard in derived particle is not a valid subset of wildcard in base particle. + Zástupný symbol (vzor hledání) v odvozené částici není platnou dílčí množinou zástupného symbolu v základní částici. + + + + processContent of wildcard in derived particle is weaker than wildcard in base particle. + Vlastnost processContent zástupného symbolu (vzor hledání) odvozené částice je slabší než zástupný symbol (vzor hledání) v základní částici. + + + + Derived particle allows content that is not allowed in the base particle. + Odvozená částice dovoluje obsah, který není přípustný pro základní částici. + + + + %1 has inheritance loop in its base type %2. + %1 má ve svém základním typu %2 v kruzích prováděnou dědičnost. + + + + + Circular inheritance of base type %1. + V kruzích prováděná dědičnost v základním typu %1. + + + + Circular inheritance of union %1. + V kruzích prováděná dědičnost při sjednocení %1. + + + + %1 is not allowed to derive from %2 by restriction as the latter defines it as final. + %1 není dovoleno odvodit z %2 pomocí omezení, neboť posledně uvedený ji určuje jako konečnou. + + + + %1 is not allowed to derive from %2 by extension as the latter defines it as final. + %1 není dovoleno odvodit z %2 pomocí rozšíření, neboť posledně uvedený ji určuje jako konečnou. + + + + Base type of simple type %1 cannot be complex type %2. + Složitý typ %2 nemůže být základním typem jednoduchého typu %1. + + + + Simple type %1 cannot have direct base type %2. + Jednoduchý typ %1 nemůže mít přímý základní typ %2. + + + + + Simple type %1 is not allowed to have base type %2. + Jednoduchý typ %1 nesmí mít základní typ %2. + + + + Simple type %1 can only have simple atomic type as base type. + Jednoduchý typ %1 může mít jen jednoduchý malinký základní typ. + + + + Simple type %1 cannot derive from %2 as the latter defines restriction as final. + Jednoduchý typ %1 nesmí být odvozen z %2 , neboť poslední určuje omezení jako konečné. + + + + + Variety of item type of %1 must be either atomic or union. + Rozmanitost složkových typů %1 musí být buď malinká nebo sjednocení. + + + + + Variety of member types of %1 must be atomic. + Rozmanitost členských typů %1 musí být malinká. + + + + + %1 is not allowed to derive from %2 by list as the latter defines it as final. + %1 není dovoleno odvodit z %2 pomocí seznamu, neboť posledně uvedený ji určuje jako konečnou. + + + + Simple type %1 is only allowed to have %2 facet. + Jednoduchý typ %1 může mít jen stránky %2. + + + + Base type of simple type %1 must have variety of type list. + Základní typ jednoduchého typu %1 musí mít rozmanitost seznamu typů. + + + + Base type of simple type %1 has defined derivation by restriction as final. + Základní typ jednoduchého typu %1 určuje sjednocení pomocí omezení jako konečné. + + + + Item type of base type does not match item type of %1. + Složkový typ základního typu neodpovídá složkovému typu %1. + + + + + Simple type %1 contains not allowed facet type %2. + Jednoduchý typ %1 obsahuje nedovolený typ stránky %2. + + + + + %1 is not allowed to derive from %2 by union as the latter defines it as final. + %1 není dovoleno odvodit z %2 pomocí sjednocení, neboť posledně uvedený ji určuje jako konečnou. + + + + %1 is not allowed to have any facets. + %1 nesmí mít žádné stránky. + + + + Base type %1 of simple type %2 must have variety of union. + Základní typ %1 jednoduchého typu %2 musí mít rozmanitost sjednocení typů. + + + + Base type %1 of simple type %2 is not allowed to have restriction in %3 attribute. + Základní typ %1 jednoduchého typu %2 nesmí mít žádné omezení vlastnosti %3. + + + + Member type %1 cannot be derived from member type %2 of %3's base type %4. + Členský typ %1 nemůže být odvozen z členského typu %2 ze základního typu %4 %3. + + + + Derivation method of %1 must be extension because the base type %2 is a simple type. + Rozšíření s musí používat jako způsob dědičnosti (odvození) pro %1, neboť základní typ %2 je jednoduchým typem. + + + + Complex type %1 has duplicated element %2 in its content model. + Složitý typ %1 má zdvojený prvek %2 ve svém modelu obsahu. + + + + Complex type %1 has non-deterministic content. + Složitý typ %1 má ne-neměnný obsah. + + + + Attributes of complex type %1 are not a valid extension of the attributes of base type %2: %3. + Vlastnosti složitého typu %1 nejsou žádným platným rozšířením vlastností základního typu %2: %3. + + + + Content model of complex type %1 is not a valid extension of content model of %2. + Model obsahu složitého typu %1 není žádným platným rozšířením modelu obsahu %2. + + + + Complex type %1 must have simple content. + Složitý typ %1 musí mít jednoduchý obsah. + + + + Complex type %1 must have the same simple type as its base class %2. + Složitý typ %1 musí mít jednoduchý obsah. + + + + Complex type %1 cannot be derived from base type %2%3. + Složitý typ %2 nemůže být odvozen ze základního typu %2%3. + + + + Attributes of complex type %1 are not a valid restriction from the attributes of base type %2: %3. + Vlastnosti složitého typu %1 nejsou žádným platným omezením vlastností základního typu %2: %3. + + + + Complex type %1 with simple content cannot be derived from complex base type %2. + Složitý typ %1 s jednoduchým obsahem nemůže být odvozen ze složitého základního typu %2. + + + + Item type of simple type %1 cannot be a complex type. + Složkový typ jednoduchého typu %1 nemůže být složitým typem. + + + + Member type of simple type %1 cannot be a complex type. + Členský typ jednoduchého typu %1 nemůže být složitým typem. + + + + %1 is not allowed to have a member type with the same name as itself. + %1 nesmí mít členský typ se stejným názvem, jaký má sám. + + + + + + %1 facet collides with %2 facet. + Stránka %1 se střetává se stránkou %2. + + + + %1 facet must have the same value as %2 facet of base type. + Stránka %1 musí mít tutéž hodnotu, jakou má stránka %2 základního typu. + + + + %1 facet must be equal or greater than %2 facet of base type. + Stránka %1 musí být stejná nebo větší než stránka %2 základního typu. + + + + + + + + + + + %1 facet must be less than or equal to %2 facet of base type. + Stránka %1 musí být menší nebo stejná jako stránka %2 základního typu. + + + + %1 facet contains invalid regular expression + Stránka %1 obsahuje neplatný pravidelný výraz + + + + Unknown notation %1 used in %2 facet. + Stránka %2 obsahuje neplatné zaznamenání %1. + + + + %1 facet contains invalid value %2: %3. + Stránka %1 obsahuje neplatnou hodnotu %2: %3. + + + + %1 facet cannot be %2 or %3 if %4 facet of base type is %5. + Stránka %1 nesmí být %2 nebo %3, pokud je stránka %4 základního typu %5. + + + + %1 facet cannot be %2 if %3 facet of base type is %4. + Stránka %1 nesmí být %2, pokud je stránka %3 základního typu %4. + + + + + + %1 facet must be less than or equal to %2 facet. + Stránka %1 musí být menší nebo stejná jako stránka %2. + + + + + + %1 facet must be less than %2 facet of base type. + Stránka %1 musí být menší než stránka %2 základního typu. + + + + + %1 facet and %2 facet cannot appear together. + Stránky %1 a %2 se nemohou objevit spolu. + + + + + + %1 facet must be greater than %2 facet of base type. + Stránka %1 musí být větší než stránka %2 základního typu. + + + + + %1 facet must be less than %2 facet. + Stránka %1 musí být menší než stránka %2. + + + + + %1 facet must be greater than or equal to %2 facet of base type. + Stránka %1 musí být větší nebo stejná jako stránka %2 základního typu. + + + + Simple type contains not allowed facet %1. + Jednoduchý typ obsahuje nedovolenou stránku %1. + + + + %1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. + Stránky %1, %2, %3, %4, %5 a %6 nejsou při odvození (dědičnosti) pomocí seznamu dovoleny. + + + + Only %1 and %2 facets are allowed when derived by union. + Při odvození (dědičnosti) pomocí sjednocení jsou dovoleny pouze stránky %1 a %2. + + + + + %1 contains %2 facet with invalid data: %3. + %1 obsahuje stránku %2 s neplatnými daty: %3. + + + + Attribute group %1 contains attribute %2 twice. + Skupina vlastností %1 obsahuje vlastnost %2 dvakrát. + + + + Attribute group %1 contains two different attributes that both have types derived from %2. + Skupina vlastností %1 obsahuje dvě rozdílné vlastnosti, obě s typy, které jsou odvozeny z %2. + + + + Attribute group %1 contains attribute %2 that has value constraint but type that inherits from %3. + Skupina vlastností %1 obsahuje vlastnost %2 s omezením hodnoty, typ je ale odvozen z %3. + + + + Complex type %1 contains attribute %2 twice. + Složitý typ %1 obsahuje vlastnost %2 dvakrát. + + + + Complex type %1 contains two different attributes that both have types derived from %2. + Složitý typ %1 obsahuje dvě rozdílné vlastnosti, obě s typy, které jsou odvozeny z %2. + + + + Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. + Složitý typ %1 obsahuje vlastnost %2 s omezením hodnoty, typ je ale odvozen z %3. + + + + Element %1 is not allowed to have a value constraint if its base type is complex. + Prvek %1 nesmí mít omezení hodnoty, když je základní typ složitý. + + + + Element %1 is not allowed to have a value constraint if its type is derived from %2. + Prvek %1 nesmí mít omezení hodnoty, když je jeho typ odvozen z %2. + + + + + Value constraint of element %1 is not of elements type: %2. + Omezení hodnoty prvku %1 není z typu prvku: %2. + + + + Element %1 is not allowed to have substitution group affiliation as it is no global element. + Prvek %1 nesmí patřit k skupině nahrazení, neboť není celkovým prvkem. + + + + Type of element %1 cannot be derived from type of substitution group affiliation. + Typ prvku %1 nemůže být odvozen z typu příslušné skupiny nahrazení. + + + + Value constraint of attribute %1 is not of attributes type: %2. + Omezení hodnoty vlastnosti %1 není z typu vlastnosti: %2. + + + + Attribute %1 has value constraint but has type derived from %2. + Vlastnost %1 má mezení hodnoty, ale její typ je odvozen z %2. + + + + %1 attribute in derived complex type must be %2 like in base type. + Vlastnost %1 v odvozeném složitém typu musí být jako v základním typu %2. + + + + Attribute %1 in derived complex type must have %2 value constraint like in base type. + Vlastnost %1 v odvozeném složitém typu musí mít omezení hodnoty jako v základním typu %2. + + + + Attribute %1 in derived complex type must have the same %2 value constraint like in base type. + Vlastnost %1 v odvozeném složitém typu musí mít stejné omezení hodnoty %2 jako v základním typu. + + + + Attribute %1 in derived complex type must have %2 value constraint. + Vlastnost %1 v odvozeném složitém typu musí omezení hodnoty %2. + + + + processContent of base wildcard must be weaker than derived wildcard. + Vlastnost 'processContent' základního zástupného symbolu (vzor hledání) musí být slabší než odvozený zástupný symbol (vzor hledání). + + + + + Element %1 exists twice with different types. + Prvek %1 existuje dvakrát s rozdílnými typy. + + + + Particle contains non-deterministic wildcards. + Částice obsahuje ne-neměnné zástupné symboly (vzory hledání). + + + + + Base attribute %1 is required but derived attribute is not. + Základní vlastnost %1 je vyžadována, ale odvozená vlastnost není. + + + + Type of derived attribute %1 cannot be validly derived from type of base attribute. + Typ odvozené vlastnosti %1 nemůže být platně odvozen z typu základní vlastnosti. + + + + Value constraint of derived attribute %1 does not match value constraint of base attribute. + Omezení hodnoty odvozené vlastnosti %1 neodpovídá omezení hodnoty základní vlastnosti. + + + + Derived attribute %1 does not exists in the base definition. + Odvozená vlastnost %1 neexistuje v základním vymezení. + + + + Derived attribute %1 does not match the wildcard in the base definition. + Odvozená vlastnost %1 neodpovídá zástupnému symbolu (vzoru hledání) v základním vymezení. + + + + Base attribute %1 is required but missing in derived definition. + Základní vlastnost %1 je vyžadována, ale chybí v odvozeném vymezení. + + + + Derived definition contains an %1 element that does not exists in the base definition + Odvozené vymezení obsahuje prvek %1, který v základním vymezení neexistuje + + + + Derived wildcard is not a subset of the base wildcard. + Odvozený zástupný symbol (vzor hledání) není žádnou dílčí množinou základního zástupného symbolu (vzoru hledání). + + + + %1 of derived wildcard is not a valid restriction of %2 of base wildcard + Vlastnost %1 odvozeného zástupného symbolu (vzoru hledání) není platným omezením %2 základního zástupného symbolu (vzoru hledání) + + + + Attribute %1 from base type is missing in derived type. + Vlastnost %1 základního typu chybí v odvozeném typu. + + + + Type of derived attribute %1 differs from type of base attribute. + Typ odvozené vlastnosti %1 se liší od typu základní vlastnosti. + + + + Base definition contains an %1 element that is missing in the derived definition + Základní vymezení obsahuje prvek %1, který v odvozeném vymezení chybí + + + + Can not process unknown element %1, expected elements are: %2. + Nelze zpracovat neznámý prvek %1, očekávanými prvky jsou: %2. + + + + Element %1 is not allowed in this scope, possible elements are: %2. + Prvek %1 není v této oblasti dovolen; možnými prvky jsou: %2. + + + + Child element is missing in that scope, possible child elements are: %1. + Podprvek v oblasti chybí; možnými podprvky jsou: %1. + + + + Document is not a XML schema. + Dokument není schématem XML. + + + + %1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. + Vlastnost %1 prvku %2 obsahuje neplatný obsah: {%3} není hodnotou typu %4. + + + + %1 attribute of %2 element contains invalid content: {%3}. + Vlastnost %1 prvku %2 obsahuje neplatný obsah: {%3}. + + + + Target namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. + Cílový jmenný prostor %1 zahrnutého schématu se liší od jím vymezeného cílového jmenného prostoru %2. + + + + + Target namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. + Cílový jmenný prostor %1 zavedeného schématu se liší od jím vymezeného cílového jmenného prostoru %2. + + + + %1 element is not allowed to have the same %2 attribute value as the target namespace %3. + Prvek %1 nemůže stanovit cílový jmenný prostor %3 jako hodnotu vlastnosti %2. + + + + %1 element without %2 attribute is not allowed inside schema without target namespace. + Ve schématu bez jmenného prostoru musí mít prvek %1 vlastnost %2. + + + + + %1 element is not allowed inside %2 element if %3 attribute is present. + Když je přítomna vlastnost %3, nesmí se vyskytovat prvek %1 v prvku %2. + + + + + + %1 element has neither %2 attribute nor %3 child element. + Prvek %1 nemá ani vlastnost %2 ani podprvek %3. + + + + + + + + + + + + + + + + + %1 element with %2 child element must not have a %3 attribute. + Prvek %1 nesmí mít vlastnost %3, když existuje podprvek %2. + + + + %1 attribute of %2 element must be %3 or %4. + Vlastnost %1 prvku %2 může být jen %3 nebo %4. + + + + %1 attribute of %2 element must have a value of %3. + Vlastnost %1 prvku %2 musí mít hodnotu %3. + + + + + %1 attribute of %2 element must have a value of %3 or %4. + Vlastnost %1 prvku %2 může mít jen jednu z hodnot %3 nebo %4. + + + + + + + + + + + + + + + + + %1 element must not have %2 and %3 attribute together. + Vlastnosti %2 a %3 se v prvku %1 nemohou objevit společně. + + + + + Content of %1 attribute of %2 element must not be from namespace %3. + Obsah vlastnosti %1 prvku %2 nemůže pocházet ze jmenného prostoru %3. + + + + + %1 attribute of %2 element must not be %3. + Vlastnost %1 prvku %2 nemůže být %3. + + + + %1 attribute of %2 element must have the value %3 because the %4 attribute is set. + Vlastnost %1 prvku %2 musí mít hodnotu %3, protože je nastavena vlastnost %4. + + + + Specifying use='prohibited' inside an attribute group has no effect. + Zadání use='prohibited' ve skupině vlastností nemá naprosto žádný účinek. + + + + %1 element must have either %2 or %3 attribute. + Prvek %1 musí mít buď vlastnost %2 nebo %3. + + + + %1 element must have either %2 attribute or %3 or %4 as child element. + Prvek %1 musí mít buď vlastnost %2, nebo mít %3 nebo %4 jako podprvek. + + + + %1 element requires either %2 or %3 attribute. + Prvek %1 vyžaduje buď vlastnost %2 nebo %3. + + + + Text or entity references not allowed inside %1 element + Text nebo odkazy na entitu nejsou v prvku %1 dovoleny + + + + + %1 attribute of %2 element must contain %3, %4 or a list of URIs. + Vlastnost %1 prvku %2 musí obsahovat %3, %4 nebo seznam adres (URL). + + + + %1 element is not allowed in this context. + Prvek %1 není v této souvislosti dovolen. + + + + %1 attribute of %2 element has larger value than %3 attribute. + Hodnota vlastnosti %1 prvku %2 je větší než hodnota vlastnosti %3. + + + + Prefix of qualified name %1 is not defined. + Předpona způsobilého názvu %1 není stanovena. + + + + + %1 attribute of %2 element must either contain %3 or the other values. + Hodnota vlastnosti %1 prvku %2 musí obsahovat buď %3 nebo jiné hodnoty. + + + + Component with id %1 has been defined previously. + Součást s ID %1 je již stanovena. + + + + Element %1 already defined. + Prvek %1 je již stanoven. + + + + Attribute %1 already defined. + Vlastnost %1 je již stanovena. + + + + Type %1 already defined. + Typ %1 je již stanoven. + + + + Attribute group %1 already defined. + Skupina vlastností %1 je již stanovena. + + + + Element group %1 already defined. + Skupina prvků %1 je již stanovena. + + + + Notation %1 already defined. + Zápis %1 je již stanoven. + + + + Identity constraint %1 already defined. + Omezení totožnosti %1 je již stanoveno. + + + + Duplicated facets in simple type %1. + Zdvojené stránky v jednoduchém typu %1. + + + + %1 references unknown %2 or %3 element %4. + %1 odkazuje na neznámý prvek %4 (%2 nebo %3). + + + + %1 references identity constraint %2 that is no %3 or %4 element. + %1 odkazuje na omezení totožnosti %2, které není ani prvek '%3' ani '%4'. + + + + %1 has a different number of fields from the identity constraint %2 that it references. + U %1 se liší počet polí od omezení totožnosti %2, na kterou odkazuje. + + + + Base type %1 of %2 element cannot be resolved. + Základní typ %1 prvku %2 nemůže být vyřešen. + + + + Item type %1 of %2 element cannot be resolved. + Složkový typ %1 prvku %2 nemůže být vyřešen. + + + + Member type %1 of %2 element cannot be resolved. + Členský typ %1 prvku %2 nemůže být vyřešen. + + + + + + Type %1 of %2 element cannot be resolved. + Typ %1 prvku %2 nemůže být vyřešen. + + + + Base type %1 of complex type cannot be resolved. + Základní typ %1 složitého typu nemůže být vyřešen. + + + + %1 cannot have complex base type that has a %2. + %1 nelze mít žádný složitý základní typ, který má %2. + + + + Content model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type. + Model obsahu složitého typu %1 obsahuje prvek %2; nelze jej proto odvodit pomocí rozšíření z ne-prázdného typu. + + + + Complex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. + Složitý typ %1 nemůže být odvozen pomocí rozšíření z %2, neboť poslední obsahuje prvek '%3' ve svém modelu obsahu. + + + + Type of %1 element must be a simple type, %2 is not. + Typ prvku %1 musí být jednoduchým prvkem, což %2 není. + + + + Substitution group %1 of %2 element cannot be resolved. + Skupina nahrazení %1 prvku %2 nemůže být vyřešena. + + + + Substitution group %1 has circular definition. + Skupina nahrazení %1 má v kruzích prováděné vymezení. + + + + + Duplicated element names %1 in %2 element. + Název prvku %1 se vyskytuje v prvku %2 vícekrát. + + + + + + + Reference %1 of %2 element cannot be resolved. + Odkaz %1 prvku %2 nemůže být vyřešen. + + + + Circular group reference for %1. + V kruzích prováděný skupinový odkaz pro %1. + + + + %1 element is not allowed in this scope + Prvek %1 není v této oblasti dovolen + + + + %1 element cannot have %2 attribute with value other than %3. + Hodnota vlastnosti %2 prvku %1 může být pouze %3. + + + + %1 element cannot have %2 attribute with value other than %3 or %4. + Hodnota vlastnosti %2 prvku %1 může být pouze %3 nebo %4. + + + + %1 or %2 attribute of reference %3 does not match with the attribute declaration %4. + Vlastnost %1 nebo %2 odkazu %3 neodpovídá prohlášení vlastnosti %4. + + + + Attribute group %1 has circular reference. + Skupina vlastnosti %1 má kruzích prováděný odkaz. + + + + %1 attribute in %2 must have %3 use like in base type %4. + Vlastnost %1 v %2 musí mít použití '%3' jako v základním typu %4. + + + + Attribute wildcard of %1 is not a valid restriction of attribute wildcard of base type %2. + Zástupný symbol vlastnosti (vzor hledání) %1není platným omezením zástupného symbolu vlastnosti (vzoru hledání) základního typu %2. + + + + %1 has attribute wildcard but its base type %2 has not. + %1 má zástupný symbol vlastnosti (vzor hledání), ale jeho základní typ %2 nemá. + + + + Union of attribute wildcard of type %1 and attribute wildcard of its base type %2 is not expressible. + Sjednocení zástupného symbolu vlastnosti (vzoru hledání) typu %1 a zástupného symbolu vlastnosti (vzoru hledání) jeho základního typu %2 není vyjádřitelné. + + + + Enumeration facet contains invalid content: {%1} is not a value of type %2. + Výčtová stránka obsahuje neplatný obsah: {%1} není hodnotou typu %2. + + + + Namespace prefix of qualified name %1 is not defined. + Předpona jmenného prostoru způsobilého názvu %1 není stanovena. + + + + + %1 element %2 is not a valid restriction of the %3 element it redefines: %4. + Prvek %2 (%1) není platným omezením přepisovaného prvku (%3): %4. + + + + + + %1 is not valid according to %2. + %1 je podle %2 neplatné. + + + + String content does not match the length facet. + Obsah řetězce znaků neodpovídá stránce délky. + + + + String content does not match the minLength facet. + Obsah řetězce znaků neodpovídá stránce délky (nejmenší údaj, 'minLength'). + + + + String content does not match the maxLength facet. + Obsah řetězce znaků neodpovídá stránce délky (největší údaj; 'maxLength'). + + + + String content does not match pattern facet. + Obsah řetězce znaků neodpovídá stránce vzoru pro hledání. + + + + String content is not listed in the enumeration facet. + Obsah řetězce znaků není obsažen ve výčtové stránce. + + + + Signed integer content does not match the maxInclusive facet. + Celočíselná hodnota označená znaménkem neodpovídá stránce 'maxInclusive'. + + + + Signed integer content does not match the maxExclusive facet. + Celočíselná hodnota označená znaménkem neodpovídá stránce 'maxExclusive'. + + + + Signed integer content does not match the minInclusive facet. + Celočíselná hodnota označená znaménkem neodpovídá stránce 'minInclusive'. + + + + Signed integer content does not match the minExclusive facet. + Celočíselná hodnota označená znaménkem neodpovídá stránce 'minExclusive'. + + + + Signed integer content is not listed in the enumeration facet. + Celočíselná hodnota označená znaménkem není obsažena ve výčtové stránce. + + + + Signed integer content does not match pattern facet. + Celočíselná hodnota označená znaménkem neodpovídá stránce vzoru pro hledání. + + + + Signed integer content does not match in the totalDigits facet. + Celočíselná hodnota označená znaménkem neodpovídá stránce 'totalDigits'. + + + + Unsigned integer content does not match the maxInclusive facet. + Celočíselná hodnota jsoucí bez znaménka neodpovídá stránce 'maxInclusive'. + + + + Unsigned integer content does not match the maxExclusive facet. + Celočíselná hodnota jsoucí bez znaménka neodpovídá stránce 'maxExclusive'. + + + + Unsigned integer content does not match the minInclusive facet. + Celočíselná hodnota jsoucí bez znaménka neodpovídá stránce 'minInclusive'. + + + + Unsigned integer content does not match the minExclusive facet. + Celočíselná hodnota jsoucí bez znaménka neodpovídá stránce 'minExclusive'. + + + + Unsigned integer content is not listed in the enumeration facet. + Celočíselná hodnota jsoucí bez znaménka není obsažena ve výčtové stránce. + + + + Unsigned integer content does not match pattern facet. + Celočíselná hodnota jsoucí bez znaménka neodpovídá stránce vzoru pro hledání. + + + + Unsigned integer content does not match in the totalDigits facet. + Celočíselná hodnota jsoucí bez znaménka neodpovídá stránce 'totalDigits'. + + + + Double content does not match the maxInclusive facet. + Číslo s pohyblivou čárkou neodpovídá stránce 'maxInclusive'. + + + + Double content does not match the maxExclusive facet. + Číslo s pohyblivou čárkou neodpovídá stránce 'maxExclusive'. + + + + Double content does not match the minInclusive facet. + Číslo s pohyblivou čárkou neodpovídá stránce 'minInclusive'. + + + + Double content does not match the minExclusive facet. + Číslo s pohyblivou čárkou neodpovídá stránce 'minExclusive'. + + + + Double content is not listed in the enumeration facet. + Číslo s pohyblivou čárkou není obsaženo ve výčtové stránce. + + + + Double content does not match pattern facet. + Číslo s pohyblivou čárkou neodpovídá stránce vzoru pro hledání. + + + + Decimal content does not match in the fractionDigits facet. + Desetinné číslo neodpovídá stránce 'fractionDigits'. + + + + Decimal content does not match in the totalDigits facet. + Desetinné číslo neodpovídá stránce 'totalDigits'. + + + + Date time content does not match the maxInclusive facet. + Údaj o datu neodpovídá stránce 'maxInclusive'. + + + + Date time content does not match the maxExclusive facet. + Údaj o datu neodpovídá stránce 'maxExclusive'. + + + + Date time content does not match the minInclusive facet. + Údaj o datu neodpovídá stránce 'minInclusive'. + + + + Date time content does not match the minExclusive facet. + Údaj o datu neodpovídá stránce 'minExclusive'. + + + + Date time content is not listed in the enumeration facet. + Údaj o datu není obsažen ve výčtové stránce. + + + + Date time content does not match pattern facet. + Údaj o datu neodpovídá stránce vzoru pro hledání. + + + + Duration content does not match the maxInclusive facet. + Údaj o době trvání neodpovídá stránce 'maxInclusive'. + + + + Duration content does not match the maxExclusive facet. + Údaj o době trvání neodpovídá stránce 'maxExclusive'. + + + + Duration content does not match the minInclusive facet. + Údaj o době trvání neodpovídá stránce 'minInclusive'. + + + + Duration content does not match the minExclusive facet. + Údaj o době trvání neodpovídá stránce 'minExclusive'. + + + + Duration content is not listed in the enumeration facet. + Údaj o době trvání není obsažen ve výčtové stránce. + + + + Duration content does not match pattern facet. + Údaj o době trvání neodpovídá stránce vzoru pro hledání. + + + + Boolean content does not match pattern facet. + Booleánská hodnota neodpovídá stránce vzoru pro hledání. + + + + Binary content does not match the length facet. + Binární obsah neodpovídá stránce délky. + + + + Binary content does not match the minLength facet. + Binární obsah neodpovídá stránce 'minLength'. + + + + Binary content does not match the maxLength facet. + Binární obsah neodpovídá stránce 'maxLength'. + + + + Binary content is not listed in the enumeration facet. + Binární obsah není obsažen ve výčtové stránce. + + + + Invalid QName content: %1. + Obsah způsobilého názvu ('QName') je neplatný: %1. + + + + QName content is not listed in the enumeration facet. + Obsah způsobilého názvu ('QName') není obsažen ve výčtové stránce. + + + + QName content does not match pattern facet. + Obsah způsobilého názvu ('QName') neodpovídá stránce vzoru pro hledání. + + + + Notation content is not listed in the enumeration facet. + Obsah zápisu není obsažen ve výčtové stránce. + + + + List content does not match length facet. + Obsah seznamu neodpovídá stránce délky. + + + + List content does not match minLength facet. + Obsah seznamu neodpovídá stránce 'minLength'. + + + + List content does not match maxLength facet. + Obsah seznamu neodpovídá stránce 'maxLength'. + + + + List content is not listed in the enumeration facet. + Obsah seznamu není obsažen ve výčtové stránce. + + + + List content does not match pattern facet. + Obsah seznamu neodpovídá stránce vzoru pro hledání. + + + + Union content is not listed in the enumeration facet. + Obsah sjednocení není obsažen ve výčtové stránce. + + + + Union content does not match pattern facet. + Obsah sjednocení neodpovídá stránce vzoru pro hledání. + + + + Data of type %1 are not allowed to be empty. + Data typu %1 nemohou být prázdná. + + + + Element %1 is missing child element. + U prvku %1 chybí podprvek. + + + + There is one IDREF value with no corresponding ID: %1. + Existuje hodnota IDREF, pro kterou neexistuje příslušné ID: %1. + + + + Loaded schema file is invalid. + Nahraný soubor se schématem je neplatný. + + + + %1 contains invalid data. + %1 obsahuje neplatná data. + + + + xsi:schemaLocation namespace %1 has already appeared earlier in the instance document. + Jmenný prostor xsi:schemaLocation %1 byl již dříve v případovém dokumentu stanoven. + + + + xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute. + xsi:noNamespaceSchemaLocation se nemůže objevit po prvním prvku nebo vlastnosti bez jmenného prostoru. + + + + No schema defined for validation. + Pro schválení není stanoveno žádné schéma. + + + + No definition for element %1 available. + Pro prvek %1 není dostupné žádné vymezení. + + + + + + Specified type %1 is not known to the schema. + Zadaný typ %1 není ve schématu stanoven. + + + + Element %1 is not defined in this scope. + Prvek %1 není v této oblasti stanoven. + + + + Declaration for element %1 does not exist. + Pro prvek %1 není dostupné žádné prohlášení. + + + + Element %1 contains invalid content. + Prvek %1 obsahuje neplatný obsah. + + + + Element %1 is declared as abstract. + Prvek %1 je prohlášen jako abstraktní. + + + + Element %1 is not nillable. + Prvek %1 nemá zadánu vlastnost 'nillable'. + + + + Attribute %1 contains invalid data: %2 + Vlastnost %1 obsahuje neplatná data: %2 + + + + Element contains content although it is nillable. + Prvek má obsah, ačkoli je 'nillable'. + + + + Fixed value constrained not allowed if element is nillable. + Pevné omezení hodnoty není dovoleno, pokud je prvek 'nillable'. + + + + Specified type %1 is not validly substitutable with element type %2. + Zadaný typ %1 není platně nahraditelný typem prvku %2. + + + + Complex type %1 is not allowed to be abstract. + Složitý typ %1 nemůže být abstraktní. + + + + Element %1 contains not allowed attributes. + Prvek %1 obsahuje nepřípustné vlastnosti. + + + + + Element %1 contains not allowed child element. + Prvek %1 obsahuje nepřípustný podprvek. + + + + + Content of element %1 does not match its type definition: %2. + Obsah prvku %1 neodpovídá vymezení svého typu: %2. + + + + + + Content of element %1 does not match defined value constraint. + Obsah prvku %1 neodpovídá stanovenému omezení hodnoty. + + + + Element %1 contains not allowed child content. + Prvek %1 obsahuje nepřípustný podobsah. + + + + Element %1 contains not allowed text content. + Prvek %1 obsahuje nepřípustný textový obsah. + + + + Element %1 can not contain other elements, as it has a fixed content. + Prvek %1 nesmí obsahovat žádné podprvky, protože má pevný obsah. + + + + Element %1 is missing required attribute %2. + U prvkuk %1 chybí vyžadovaná vlastnost %2. + + + + Attribute %1 does not match the attribute wildcard. + Vlastnost %1 neodpovídá zástupnému symbolu (vzoru hledání) vlastnosti. + + + + Declaration for attribute %1 does not exist. + Pro vlastnost %1 není dostupné žádné prohlášení. + + + + Element %1 contains two attributes of type %2. + Prvek %1 obsahuje dvě vlastnosti typu %2. + + + + Attribute %1 contains invalid content. + Vlastnost %1 obsahuje neplatný obsah. + + + + Element %1 contains unknown attribute %2. + Prvek %1 obsahuje neznámou vlastnost %2. + + + + + Content of attribute %1 does not match its type definition: %2. + Obsah vlastnosti %1 neodpovídá vymezení svého typu: %2. + + + + + Content of attribute %1 does not match defined value constraint. + Obsah vlastnosti %1 neodpovídá stanovenému omezení hodnoty. + + + + Non-unique value found for constraint %1. + Pro omezení %1 byla nalezena ne jednoznačně stanovená hodnota. + + + + Key constraint %1 contains absent fields. + Omezení klíče %1 obsahuje nepřítomná pole. + + + + Key constraint %1 contains references nillable element %2. + Omezení klíče %1 obsahuje odkazy na prvek %2, který je 'nillable'. + + + + No referenced value found for key reference %1. + Odkazovanou hodnotu odkazu na klíč %1 se nepodařilo najít. + + + + More than one value found for field %1. + Pro pole %1 bylo nalezeno více hodnot. + + + + Field %1 has no simple type. + Pole %1 nemá žádný jednoduchý typ. + + + + ID value '%1' is not unique. + Hodnota ID %1 není jednoznačná. + + + + '%1' attribute contains invalid QName content: %2. + Vlastnost %1 obsahuje neplatný způsobilý název: %2. + + + + VolumeSlider + + Muted + Ztlumení + + + Volume: %1% + Hlasitost: %1% + + + diff --git a/translations/qt_help_cs.ts b/translations/qt_help_cs.ts new file mode 100644 index 0000000..15836f1 --- /dev/null +++ b/translations/qt_help_cs.ts @@ -0,0 +1,395 @@ + + + + + QCLuceneResultWidget + + + Search Results + Výsledky hledání + + + + Note: + Poznámka: + + + + The search results may not be complete since the documentation is still being indexed! + Nemusí být ukázány všechny výsledky, protože dokumentace je stále ještě rejstříkována! + + + + Your search did not match any documents. + Nebyly nalezeny žádné dokumenty, které by odpovídaly vašemu hledání. + + + + (The reason for this might be that the documentation is still being indexed.) + (Důvodem pro to by mohlo být, že dokumentace je stále ještě rejstříkována.) + + + + QHelpCollectionHandler + + The collection file is not set up yet! + Soubor se sbírkou ještě není zřízen! + + + + The collection file '%1' is not set up yet! + Soubor se sbírkou '%1' ještě není zřízen! + + + + Cannot load sqlite database driver! + Databázový ovladač pro SQLite nelze nahrát! + + + + + Cannot open collection file: %1 + Nelze otevřít soubor se sbírkou: %1 + + + + Cannot create tables in file %1! + V souboru %1 nelze vytvořit žádné tabulky! + + + + The collection file '%1' already exists! + Soubor se sbírkou '%1' již existuje! + + + + Unknown filter '%1'! + Neznámý filtr '%1'! + + + + Invalid documentation file '%1'! + Neplatný soubor s dokumentací '%1'! + + + + Cannot register namespace '%1'! + Nelze zapsat jmenný prostor %1! + + + + Cannot open database '%1' to optimize! + Databázi '%1' nelze otevřít pro vyladění! + + + The specified collection file already exists! + Zadaný soubor se sbírkou již existuje! + + + + Cannot create directory: %1 + Nelze vytvořit adresář: %1 + + + + Cannot copy collection file: %1 + Nelze kopírovat soubor se sbírkou: %1 + + + Unknown filter! + Neznámý filtr! + + + + Cannot register filter %1! + Nelze zapsat filtr %1! + + + + Cannot open documentation file %1! + Nelze otevřít soubor s dokumentací: %1! + + + Invalid documentation file! + Neplatný soubor s dokumentací! + + + + The namespace %1 was not registered! + Jmenný prostor %1 nebyl zapsán! + + + + Namespace %1 already exists! + Jmenný prostor %1 již existuje! + + + Cannot register namespace! + Jmenný prostor nelze zapsat! + + + Cannot open database to optimize! + Databázi nelze otevřít pro vyladění! + + + + QHelpDBReader + + + Cannot open database '%1' '%2': %3 + The placeholders are: %1 - The name of the database which cannot be opened %2 - The unique id for the connection %3 - The actual error string + Databázi nelze otevřít: '%1' '%2': %3 + + + + QHelpEngineCore + + + The specified namespace does not exist! + Zadaný jmenný prostor neexistuje! + + + + QHelpEngineCorePrivate + + + Cannot open documentation file %1: %2! + Nelze otevřít soubor s dokumentací %1: %2! + + + + QHelpGenerator + + + Invalid help data! + Neplatná data s nápovědou! + + + + No output file name specified! + Pro výstupní soubor nebyl zadán žádný název! + + + + Building up file structure... + Vytváří se uspořádání souboru... + + + + The file %1 cannot be overwritten! + Soubor %1 nelze přepsat! + + + + Cannot open data base file %1! + Nelze otevřít soubor s databází: %1! + + + + Cannot register namespace %1! + Nelze zapsat jmenný prostor %1! + + + + Insert custom filters... + Vložit uživatelsky stanovené filtry... + + + + Insert help data for filter section (%1 of %2)... + Vložit data s nápovědou pro oddělení s filtrem (%1 von %2) einfügen... + + + + Documentation successfully generated. + Dokumentace byla úspěšně vytvořena. + + + + Some tables already exist! + Některé tabulky již existují! + + + + Cannot create tables! + Tabulky nelze vytvořit! + + + + Cannot register virtual folder! + Virtuální adresář nelze zapsat! + + + + Insert files... + Vložit soubory... + + + + The referenced file %1 must be inside or within a subdirectory of (%2). Skipping it. + Odkazovaný soubor %1 se musí nacházet v adresáři %2 nebo v jeho podadresáři. Přeskakuje se. + + + + The file %1 does not exist! Skipping it. + Soubor %1 neexistuje! Přeskakuje se. + + + + Cannot open file %1! Skipping it. + Soubor %1 nelze otevřít! Přeskakuje se. + + + + The filter %1 is already registered! + Filtr %1 je již zapsán! + + + + Cannot register filter %1! + Nelze zapsat filtr %1! + + + + Insert indices... + Vložit rejstříky... + + + + Insert contents... + Vložit obsah... + + + + Cannot insert contents! + Obsah nelze vložit! + + + + Cannot register contents! + Obsah nelze zapsat! + + + + QHelpSearchQueryWidget + + + Search for: + Hledat: + + + + Previous search + Předchozí hledání + + + + Next search + Další hledání + + + + Search + Hledat + + + + Advanced search + Rozšířené hledání + + + + words <B>similar</B> to: + Slova <B>podobná</B>: + + + + <B>without</B> the words: + <B>beze</B> slov: + + + + with <B>exact phrase</B>: + s <B>přesnou skupinou slov</B>: + + + + with <B>all</B> of the words: + se <B>všemi</B> slovy: + + + + with <B>at least one</B> of the words: + s <B>jakýmkoli</B> ze slov: + + + + QHelpSearchResultWidget + + + 0 - 0 of 0 Hits + 0 - 0 z 0 zásahů + + + + QHelpSearchResultWidgetPrivate + + + %1 - %2 of %3 Hits + %1 - %2 z %3 zásahů + + + + QObject + + + Untitled + Bez názvu + + + + Unknown token. + Neznámý symbol. + + + + Unknown token. Expected "QtHelpProject"! + Neznámý symbol. Byl očekáván "QtHelpProject"! + + + + Error in line %1: %2 + Chyba na řádku %1: %2 + + + + A virtual folder must not contain a '/' character! + Virtuální složka nesmí obsahovat znak '/'! + + + + A namespace must not contain a '/' character! + Jmenný prostor nesmí obsahovat znak '/'! + + + + Missing namespace in QtHelpProject. + Chybějící jmenný prostor QtHelpProject. + + + + Missing virtual folder in QtHelpProject + Chybějící virtuální složka v QtHelpProject. + + + + Missing attribute in keyword at line %1. + Chybějící vlastnost v klíčovém slově na řádku %1. + + + + The input file %1 could not be opened! + Vstupní soubor %1 se nepodařilo otevřít! + + + diff --git a/translations/translations.pri b/translations/translations.pri index 8896654..9c70557 100644 --- a/translations/translations.pri +++ b/translations/translations.pri @@ -17,7 +17,7 @@ LUPDATE += -locations relative -no-ui-lines ###### Qt Libraries -QT_TS = ar da de es fr iw ja_JP pl pt ru sk sl sv uk zh_CN zh_TW +QT_TS = ar cs da de es fr iw ja_JP pl pt ru sk sl sv uk zh_CN zh_TW ts-qt.commands = (cd $$QT_SOURCE_TREE/src && $$LUPDATE \ -I../include -I../include/Qt \ -- cgit v0.12 From 5d17f9735ab30983d71fc4bbfc71c8ed4b563585 Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Tue, 2 Feb 2010 15:05:40 +0100 Subject: Revert "Improve raster graphics system performance on Mac." This reverts commit f5f62c0bede7b4558b35b595b3b9bc11e0232fac. Breaks the build for the cocoa port. --- src/gui/kernel/qcocoasharedwindowmethods_mac_p.h | 20 -------------------- src/gui/kernel/qcocoaview_mac.mm | 9 ++++----- src/gui/kernel/qt_cocoa_helpers_mac.mm | 2 +- src/gui/kernel/qwidget.cpp | 15 +-------------- src/gui/kernel/qwidget_mac.mm | 19 ------------------- src/gui/painting/qwindowsurface_raster.cpp | 4 +++- 6 files changed, 9 insertions(+), 60 deletions(-) diff --git a/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h b/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h index 7829a4e..1a265d0 100644 --- a/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h +++ b/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h @@ -51,9 +51,6 @@ NSPanel, while QCocoaWindow needs to inherit NSWindow rather than NSPanel). ****************************************************************************/ -#include -#include - QT_BEGIN_NAMESPACE extern Qt::MouseButton cocoaButton2QtButton(NSInteger buttonNum); // qcocoaview.mm extern QPointer qt_button_down; //qapplication_mac.cpp @@ -188,20 +185,3 @@ QT_END_NAMESPACE return [super frameViewClassForStyleMask:styleMask]; } -- (void)displayIfNeeded -{ - - QWidget *qwidget = [[QT_MANGLE_NAMESPACE(QCocoaWindowDelegate) sharedDelegate] qt_qwidgetForWindow:self]; - if (qwidget == 0) { - [super displayIfNeeded]; - return; - } - - if (QApplicationPrivate::graphicsSystem() != 0) { - if (QWidgetBackingStore *bs = qt_widget_private(qwidget)->maybeBackingStore()) - bs->sync(qwidget, qwidget->rect()); - } - [super displayIfNeeded]; -} - - diff --git a/src/gui/kernel/qcocoaview_mac.mm b/src/gui/kernel/qcocoaview_mac.mm index 2c35be2..d255604 100644 --- a/src/gui/kernel/qcocoaview_mac.mm +++ b/src/gui/kernel/qcocoaview_mac.mm @@ -520,11 +520,10 @@ extern "C" { - (void)drawRect:(NSRect)aRect { if (QApplicationPrivate::graphicsSystem() != 0) { - if (QWidgetBackingStore *bs = qwidgetprivate->maybeBackingStore()) { - // Drawing is handled on the window level - // See qcocoasharedwindowmethods_mac_p. - return; - } + if (QWidgetBackingStore *bs = qwidgetprivate->maybeBackingStore()) + bs->markDirty(qwidget->rect(), qwidget); + qwidgetprivate->syncBackingStore(qwidget->rect()); + return; } CGContextRef cg = (CGContextRef)[[NSGraphicsContext currentContext] graphicsPort]; qwidgetprivate->hd = cg; diff --git a/src/gui/kernel/qt_cocoa_helpers_mac.mm b/src/gui/kernel/qt_cocoa_helpers_mac.mm index 65c04e5..e06a810 100644 --- a/src/gui/kernel/qt_cocoa_helpers_mac.mm +++ b/src/gui/kernel/qt_cocoa_helpers_mac.mm @@ -1162,7 +1162,7 @@ CGContextRef qt_mac_graphicsContextFor(QWidget *widget) CGrafPtr port = GetWindowPort(qt_mac_window_for(widget)); QDBeginCGContext(port, &context); #else - CGContextRef context = reinterpret_cast([[qt_mac_window_for(widget) graphicsContext] graphicsPort]); + CGContextRef context = (CGContextRef)[[NSGraphicsContext graphicsContextWithWindow:qt_mac_window_for(widget)] graphicsPort]; #endif return context; } diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp index 78a25ac..ffad38b 100644 --- a/src/gui/kernel/qwidget.cpp +++ b/src/gui/kernel/qwidget.cpp @@ -1660,13 +1660,7 @@ void QWidgetPrivate::syncBackingStore() repaint_sys(dirty); dirty = QRegion(); } else if (QWidgetBackingStore *bs = maybeBackingStore()) { -#ifdef QT_MAC_USE_COCOA - Q_UNUSED(bs); - void qt_mac_set_needs_display(QWidget *, QRegion); - qt_mac_set_needs_display(q_func(), QRegion()); -#else bs->sync(); -#endif } } @@ -1674,15 +1668,8 @@ void QWidgetPrivate::syncBackingStore(const QRegion ®ion) { if (paintOnScreen()) repaint_sys(region); - else if (QWidgetBackingStore *bs = maybeBackingStore()) { -#ifdef QT_MAC_USE_COCOA - Q_UNUSED(bs); - void qt_mac_set_needs_display(QWidget *, QRegion); - qt_mac_set_needs_display(q_func(), region); -#else + else if (QWidgetBackingStore *bs = maybeBackingStore()) bs->sync(q_func(), region); -#endif - } } void QWidgetPrivate::setUpdatesEnabled_helper(bool enable) diff --git a/src/gui/kernel/qwidget_mac.mm b/src/gui/kernel/qwidget_mac.mm index b5888b4..78c1562 100644 --- a/src/gui/kernel/qwidget_mac.mm +++ b/src/gui/kernel/qwidget_mac.mm @@ -565,25 +565,6 @@ inline static void qt_mac_set_window_group_to_popup(OSWindowRef window) } #endif -#ifdef QT_MAC_USE_COCOA -void qt_mac_set_needs_display(QWidget *widget, QRegion region) -{ - NSView *theNSView = qt_mac_nativeview_for(widget); - if (region.isNull()) { - [theNSView setNeedsDisplay:YES]; - return; - } - - QVector rects = region.rects(); - for (int i = 0; i Date: Tue, 2 Feb 2010 16:17:53 +0100 Subject: Changelog: Added Designer/uic3 changes for 4.6.2 --- dist/changes-4.6.2 | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/dist/changes-4.6.2 b/dist/changes-4.6.2 index d35f945..7ab2cde 100644 --- a/dist/changes-4.6.2 +++ b/dist/changes-4.6.2 @@ -143,7 +143,12 @@ Qt for Windows CE **************************************************************************** - Designer - * foo + * [QTBUG-6965] Enabled editing seconds of QDateTime-type properties + * [QTBUG-6757] Fixed bug where selection handles would be affected by + a style sheet set on the main form. + + - uic3 + * [QTBUG-7404] Added option to preserve layout names set by Qt 3 Designer. - qdoc3 * bar -- cgit v0.12 From 39233f76647e166961c97b38d16f612076eeb9c3 Mon Sep 17 00:00:00 2001 From: ck Date: Tue, 2 Feb 2010 16:21:52 +0100 Subject: Assistant examples: Fix missing QLatin1String. --- examples/assistant/simpletextviewer/findfiledialog.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/assistant/simpletextviewer/findfiledialog.cpp b/examples/assistant/simpletextviewer/findfiledialog.cpp index 0f7bbae..1f11f69 100644 --- a/examples/assistant/simpletextviewer/findfiledialog.cpp +++ b/examples/assistant/simpletextviewer/findfiledialog.cpp @@ -102,7 +102,7 @@ void FindFileDialog::openFile(QTreeWidgetItem *item) if (file.open(QIODevice::ReadOnly)) { QString data(file.readAll()); - if (fileName.endsWith(".html")) + if (fileName.endsWith(QLatin1String(".html"))) currentEditor->setHtml(data); else currentEditor->setPlainText(data); -- cgit v0.12 From bcd979230af769b49a1e3fdb1c9e1103ce2348de Mon Sep 17 00:00:00 2001 From: Anders Bakken Date: Tue, 2 Feb 2010 08:06:43 -0800 Subject: Add changes for 4.6.2 Mostly DirectFB. Reviewed-by: TrustMe --- dist/changes-4.6.2 | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/dist/changes-4.6.2 b/dist/changes-4.6.2 index 7ab2cde..786efcc 100644 --- a/dist/changes-4.6.2 +++ b/dist/changes-4.6.2 @@ -110,7 +110,8 @@ Qt for Unix (X11 and Mac OS X) Qt for Linux/X11 ---------------- - + * Fix a bug where QPixmap::serialNumber was not set on a transformed pixmap + in Qt/X11. - Qt for Windows @@ -130,7 +131,13 @@ Qt for Embedded Linux DirectFB -------- - + * Fix a bug where QPixmap::serialNumber was not set on a transformed pixmap + in DirectFB. + * Reimplement QPixmapData::scroll for QDirectFBPixmapData which optimizes + QPixmap::scroll + * Fix a rendering issue for semi-transparent top level windows in DirectFB. + * Make it possible to fall back to the raster engine for stretch blits in + DirectFB using QT_NO_DIRECTFB_STRETCHBLIT - Qt for Windows CE -- cgit v0.12 From 335284df68b726bda40094c866c53547c13423d2 Mon Sep 17 00:00:00 2001 From: Kent Hansen Date: Tue, 2 Feb 2010 18:01:09 +0100 Subject: Add auto-generated tests for QScriptValue tst_qscriptvalue_generated.cpp was generated by Jedrzej's generator (see testgen subdirectory). The idea is that the old isXXX and toXXX tests will be replaced entirely by the auto-generated versions, but we keep them for now (with "_old" suffix) until we are sure that the auto-generated versions cover everything. --- tests/auto/qscriptvalue/qscriptvalue.pro | 4 +- tests/auto/qscriptvalue/tst_qscriptvalue.cpp | 158 +- tests/auto/qscriptvalue/tst_qscriptvalue.h | 410 ++ .../qscriptvalue/tst_qscriptvalue_generated.cpp | 6347 ++++++++++++++++++++ 4 files changed, 6836 insertions(+), 83 deletions(-) create mode 100644 tests/auto/qscriptvalue/tst_qscriptvalue.h create mode 100644 tests/auto/qscriptvalue/tst_qscriptvalue_generated.cpp diff --git a/tests/auto/qscriptvalue/qscriptvalue.pro b/tests/auto/qscriptvalue/qscriptvalue.pro index 9efde80..1588cc5 100644 --- a/tests/auto/qscriptvalue/qscriptvalue.pro +++ b/tests/auto/qscriptvalue/qscriptvalue.pro @@ -1,5 +1,7 @@ load(qttest_p4) QT = core gui script SOURCES += tst_qscriptvalue.cpp +HEADERS += tst_qscriptvalue.h - +# Generated by testgen +SOURCES += tst_qscriptvalue_generated.cpp diff --git a/tests/auto/qscriptvalue/tst_qscriptvalue.cpp b/tests/auto/qscriptvalue/tst_qscriptvalue.cpp index ef960d0..f83cf58 100644 --- a/tests/auto/qscriptvalue/tst_qscriptvalue.cpp +++ b/tests/auto/qscriptvalue/tst_qscriptvalue.cpp @@ -39,14 +39,8 @@ ** ****************************************************************************/ - -#include +#include "tst_qscriptvalue.h" #include -#include - -#include -#include -#include //TESTED_CLASS= //TESTED_FILES= @@ -55,62 +49,70 @@ QT_BEGIN_NAMESPACE extern bool qt_script_isJITEnabled(); QT_END_NAMESPACE -class tst_QScriptValue : public QObject +tst_QScriptValue::tst_QScriptValue() + : engine(0) { - Q_OBJECT +} -public: - tst_QScriptValue(); - virtual ~tst_QScriptValue(); - -private slots: - void ctor(); - void engine(); - void toString(); - void toNumber(); - void toBoolean(); - void toBool(); - void toInteger(); - void toInt32(); - void toUInt32(); - void toUInt16(); - void toVariant(); - void toQObject(); - void toObject(); - void toDateTime(); - void toRegExp(); - void instanceOf(); - void isArray(); - void isDate(); - void isError(); - void isRegExp(); - void getSetPrototype(); - void getSetScope(); - void getSetProperty(); - void arrayElementGetterSetter(); - void getSetData(); - void getSetScriptClass(); - void call(); - void construct(); - void lessThan(); - void equals(); - void strictlyEquals(); - void castToPointer(); - void prettyPrinter_data(); - void prettyPrinter(); - void engineDeleted(); - void valueOfWithClosure(); - void objectId(); -}; +tst_QScriptValue::~tst_QScriptValue() +{ + delete engine; +} -tst_QScriptValue::tst_QScriptValue() +void tst_QScriptValue::dataHelper(InitDataFunction init, DefineDataFunction define) { + QTest::addColumn("__expression__"); + (this->*init)(); + QHash::const_iterator it; + for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) { + m_currentExpression = it.key(); + (this->*define)(it.key().toLatin1()); + } + m_currentExpression = QString(); } -tst_QScriptValue::~tst_QScriptValue() +QTestData &tst_QScriptValue::newRow(const char *tag) { + return QTest::newRow(tag) << m_currentExpression; } +void tst_QScriptValue::testHelper(TestFunction fun) +{ + QFETCH(QString, __expression__); + QScriptValue value = m_values.value(__expression__); + (this->*fun)(__expression__.toLatin1(), value); +} + +void tst_QScriptValue::assignAndCopyConstruct_initData() +{ + QTest::addColumn("dummy"); + initScriptValues(); +} + +void tst_QScriptValue::assignAndCopyConstruct_makeData(const char *expr) +{ + newRow(expr) << 0; +} + +void tst_QScriptValue::assignAndCopyConstruct_test(const char *, const QScriptValue &value) +{ + QScriptValue copy(value); + QCOMPARE(copy.strictlyEquals(value), !value.isNumber() || !qIsNaN(value.toNumber())); + QCOMPARE(copy.engine(), value.engine()); + + QScriptValue assigned = copy; + QCOMPARE(assigned.strictlyEquals(value), !copy.isNumber() || !qIsNaN(copy.toNumber())); + QCOMPARE(assigned.engine(), assigned.engine()); + + QScriptValue other(!value.toBool()); + assigned = other; + QVERIFY(!assigned.strictlyEquals(copy)); + QVERIFY(assigned.strictlyEquals(other)); + QCOMPARE(assigned.engine(), other.engine()); +} + +DEFINE_TEST_FUNCTION(assignAndCopyConstruct) + void tst_QScriptValue::ctor() { QScriptEngine eng; @@ -330,19 +332,12 @@ void tst_QScriptValue::ctor() QVERIFY(QScriptValue(0, QString("ciao")).isString()); } -void tst_QScriptValue::engine() -{ - QScriptEngine eng; - QScriptValue object = eng.newObject(); - QCOMPARE(object.engine(), &eng); -} - static QScriptValue myFunction(QScriptContext *, QScriptEngine *eng) { return eng->undefinedValue(); } -void tst_QScriptValue::toString() +void tst_QScriptValue::toString_old() { QScriptEngine eng; @@ -456,7 +451,7 @@ void tst_QScriptValue::toString() QVERIFY(variant.toString().isEmpty()); } -void tst_QScriptValue::toNumber() +void tst_QScriptValue::toNumber_old() { QScriptEngine eng; @@ -529,7 +524,7 @@ void tst_QScriptValue::toNumber() } } -void tst_QScriptValue::toBoolean() // deprecated +void tst_QScriptValue::toBoolean_old() // deprecated { QScriptEngine eng; @@ -626,7 +621,7 @@ void tst_QScriptValue::toBoolean() // deprecated } } -void tst_QScriptValue::toBool() +void tst_QScriptValue::toBool_old() { QScriptEngine eng; @@ -723,7 +718,7 @@ void tst_QScriptValue::toBool() } } -void tst_QScriptValue::toInteger() +void tst_QScriptValue::toInteger_old() { QScriptEngine eng; @@ -810,7 +805,7 @@ void tst_QScriptValue::toInteger() QCOMPARE(inv.toInteger(), 0.0); } -void tst_QScriptValue::toInt32() +void tst_QScriptValue::toInt32_old() { QScriptEngine eng; @@ -946,7 +941,7 @@ void tst_QScriptValue::toInt32() QCOMPARE(qscriptvalue_cast(inv), 0); } -void tst_QScriptValue::toUInt32() +void tst_QScriptValue::toUInt32_old() { QScriptEngine eng; @@ -1078,7 +1073,7 @@ void tst_QScriptValue::toUInt32() QCOMPARE(qscriptvalue_cast(inv), quint32(0)); } -void tst_QScriptValue::toUInt16() +void tst_QScriptValue::toUInt16_old() { QScriptEngine eng; @@ -1239,7 +1234,7 @@ void tst_QScriptValue::toUInt16() Q_DECLARE_METATYPE(QVariant) #endif -void tst_QScriptValue::toVariant() +void tst_QScriptValue::toVariant_old() { QScriptEngine eng; @@ -1346,7 +1341,7 @@ void tst_QScriptValue::toVariant() // unfortunately, this is necessary in order to do qscriptvalue_cast(...) Q_DECLARE_METATYPE(QPushButton*) -void tst_QScriptValue::toQObject() +void tst_QScriptValue::toQObject_old() { QScriptEngine eng; @@ -1541,7 +1536,7 @@ void tst_QScriptValue::toObject() } } -void tst_QScriptValue::toDateTime() +void tst_QScriptValue::toDateTime_old() { QScriptEngine eng; QDateTime dt = eng.evaluate("new Date(0)").toDateTime(); @@ -1559,7 +1554,7 @@ void tst_QScriptValue::toDateTime() QVERIFY(!eng.undefinedValue().toDateTime().isValid()); } -void tst_QScriptValue::toRegExp() +void tst_QScriptValue::toRegExp_old() { QScriptEngine eng; { @@ -1589,7 +1584,7 @@ void tst_QScriptValue::toRegExp() QVERIFY(eng.undefinedValue().toRegExp().isEmpty()); } -void tst_QScriptValue::instanceOf() +void tst_QScriptValue::instanceOf_old() { QScriptEngine eng; QScriptValue obj = eng.newObject(); @@ -1625,7 +1620,7 @@ void tst_QScriptValue::instanceOf() QCOMPARE(obj.instanceOf(otherEngine.globalObject().property("Object")), false); } -void tst_QScriptValue::isArray() +void tst_QScriptValue::isArray_old() { QScriptEngine eng; QVERIFY(eng.evaluate("[]").isArray()); @@ -1638,7 +1633,7 @@ void tst_QScriptValue::isArray() QVERIFY(!eng.undefinedValue().isArray()); } -void tst_QScriptValue::isDate() +void tst_QScriptValue::isDate_old() { QScriptEngine eng; QVERIFY(eng.evaluate("new Date()").isDate()); @@ -1652,7 +1647,7 @@ void tst_QScriptValue::isDate() QVERIFY(!eng.undefinedValue().isDate()); } -void tst_QScriptValue::isError() +void tst_QScriptValue::isError_old() { QStringList errors; errors << "Error" @@ -1677,7 +1672,7 @@ void tst_QScriptValue::isError() QVERIFY(!eng.evaluate("new Object()").isError()); } -void tst_QScriptValue::isRegExp() +void tst_QScriptValue::isRegExp_old() { QScriptEngine eng; QVERIFY(eng.evaluate("/foo/").isRegExp()); @@ -2718,7 +2713,7 @@ void tst_QScriptValue::construct() QVERIFY(!QScriptValue(QScriptValue::NullValue).construct().isValid()); } -void tst_QScriptValue::lessThan() +void tst_QScriptValue::lessThan_old() { QScriptEngine eng; @@ -2812,7 +2807,7 @@ void tst_QScriptValue::lessThan() QCOMPARE(date1.lessThan(QScriptValue(&otherEngine, 123)), false); } -void tst_QScriptValue::equals() +void tst_QScriptValue::equals_old() { QScriptEngine eng; @@ -3005,7 +3000,7 @@ void tst_QScriptValue::equals() QCOMPARE(date1.equals(QScriptValue(&otherEngine, 123)), false); } -void tst_QScriptValue::strictlyEquals() +void tst_QScriptValue::strictlyEquals_old() { QScriptEngine eng; @@ -3456,4 +3451,3 @@ void tst_QScriptValue::objectId() } QTEST_MAIN(tst_QScriptValue) -#include "tst_qscriptvalue.moc" diff --git a/tests/auto/qscriptvalue/tst_qscriptvalue.h b/tests/auto/qscriptvalue/tst_qscriptvalue.h new file mode 100644 index 0000000..6215506 --- /dev/null +++ b/tests/auto/qscriptvalue/tst_qscriptvalue.h @@ -0,0 +1,410 @@ +/**************************************************************************** +** +** 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 test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef TST_QSCRIPTVALUE_H +#define TST_QSCRIPTVALUE_H + +#include +#include +#include +#include +#include +#include + +Q_DECLARE_METATYPE(QVariant) +Q_DECLARE_METATYPE(QScriptValue) + +class tst_QScriptValue : public QObject +{ + Q_OBJECT + +public: + tst_QScriptValue(); + virtual ~tst_QScriptValue(); + +private slots: + // Generated test functions + void isArray_data(); + void isArray(); + + void isBool_data(); + void isBool(); + + void isBoolean_data(); + void isBoolean(); + + void isDate_data(); + void isDate(); + + void isError_data(); + void isError(); + + void isFunction_data(); + void isFunction(); + + void isNull_data(); + void isNull(); + + void isNumber_data(); + void isNumber(); + + void isObject_data(); + void isObject(); + +// void isQMetaObject_data(); +// void isQMetaObject(); + +// void isQObject_data(); +// void isQObject(); + + void isRegExp_data(); + void isRegExp(); + + void isString_data(); + void isString(); + + void isUndefined_data(); + void isUndefined(); + + void isValid_data(); + void isValid(); + +// void isVariant_data(); +// void isVariant(); + + void toBool_data(); + void toBool(); + + void toBoolean_data(); + void toBoolean(); + +// void toDateTime_data(); +// void toDateTime(); + + void toInt32_data(); + void toInt32(); + + void toInteger_data(); + void toInteger(); + + void toNumber_data(); + void toNumber(); + +// void toQMetaObject_data(); +// void toQMetaObject(); + +// void toQObject_data(); +// void toQObject(); + +// void toRegExp_data(); +// void toRegExp(); + + void toString_data(); + void toString(); + + void toUInt16_data(); + void toUInt16(); + + void toUInt32_data(); + void toUInt32(); + +// void toVariant_data(); +// void toVariant(); + + void equals_data(); + void equals(); + + void strictlyEquals_data(); + void strictlyEquals(); + + void lessThan_data(); + void lessThan(); + + void instanceOf_data(); + void instanceOf(); + + void assignAndCopyConstruct_data(); + void assignAndCopyConstruct(); + + void qscriptvalue_castQString_data(); + void qscriptvalue_castQString(); + + void qscriptvalue_castqsreal_data(); + void qscriptvalue_castqsreal(); + + void qscriptvalue_castbool_data(); + void qscriptvalue_castbool(); + + void qscriptvalue_castqint32_data(); + void qscriptvalue_castqint32(); + + void qscriptvalue_castquint32_data(); + void qscriptvalue_castquint32(); + + void qscriptvalue_castquint16_data(); + void qscriptvalue_castquint16(); + + // Non-generated test functions + + void toObject(); + void ctor(); + + void toString_old(); + void toNumber_old(); + void toBoolean_old(); + void toBool_old(); + void toInteger_old(); + void toInt32_old(); + void toUInt32_old(); + void toUInt16_old(); + void toVariant_old(); + void toQObject_old(); + void toDateTime_old(); + void toRegExp_old(); + void instanceOf_old(); + void isArray_old(); + void isDate_old(); + void isError_old(); + void isRegExp_old(); + + void lessThan_old(); + void equals_old(); + void strictlyEquals_old(); + + void getSetPrototype(); + void getSetScope(); + void getSetProperty(); + void arrayElementGetterSetter(); + void getSetData(); + void getSetScriptClass(); + void call(); + void construct(); + void castToPointer(); + void prettyPrinter_data(); + void prettyPrinter(); + void engineDeleted(); + void valueOfWithClosure(); + void objectId(); + +private: + typedef void (tst_QScriptValue::*InitDataFunction)(); + typedef void (tst_QScriptValue::*DefineDataFunction)(const char *); + void dataHelper(InitDataFunction init, DefineDataFunction define); + QTestData &newRow(const char *tag); + + typedef void (tst_QScriptValue::*TestFunction)(const char *, const QScriptValue &); + void testHelper(TestFunction fun); + + // Generated functions + + void initScriptValues(); + + void isArray_initData(); + void isArray_makeData(const char *expr); + void isArray_test(const char *expr, const QScriptValue &value); + + void isBool_initData(); + void isBool_makeData(const char *expr); + void isBool_test(const char *expr, const QScriptValue &value); + + void isBoolean_initData(); + void isBoolean_makeData(const char *expr); + void isBoolean_test(const char *expr, const QScriptValue &value); + + void isDate_initData(); + void isDate_makeData(const char *expr); + void isDate_test(const char *expr, const QScriptValue &value); + + void isError_initData(); + void isError_makeData(const char *expr); + void isError_test(const char *expr, const QScriptValue &value); + + void isFunction_initData(); + void isFunction_makeData(const char *expr); + void isFunction_test(const char *expr, const QScriptValue &value); + + void isNull_initData(); + void isNull_makeData(const char *expr); + void isNull_test(const char *expr, const QScriptValue &value); + + void isNumber_initData(); + void isNumber_makeData(const char *expr); + void isNumber_test(const char *expr, const QScriptValue &value); + + void isObject_initData(); + void isObject_makeData(const char *expr); + void isObject_test(const char *expr, const QScriptValue &value); + + void isQMetaObject_initData(); + void isQMetaObject_makeData(const char *expr); + void isQMetaObject_test(const char *expr, const QScriptValue &value); + + void isQObject_initData(); + void isQObject_makeData(const char *expr); + void isQObject_test(const char *expr, const QScriptValue &value); + + void isRegExp_initData(); + void isRegExp_makeData(const char *expr); + void isRegExp_test(const char *expr, const QScriptValue &value); + + void isString_initData(); + void isString_makeData(const char *expr); + void isString_test(const char *expr, const QScriptValue &value); + + void isUndefined_initData(); + void isUndefined_makeData(const char *expr); + void isUndefined_test(const char *expr, const QScriptValue &value); + + void isValid_initData(); + void isValid_makeData(const char *expr); + void isValid_test(const char *expr, const QScriptValue &value); + + void isVariant_initData(); + void isVariant_makeData(const char *expr); + void isVariant_test(const char *expr, const QScriptValue &value); + + void toBool_initData(); + void toBool_makeData(const char *); + void toBool_test(const char *, const QScriptValue &value); + + void toBoolean_initData(); + void toBoolean_makeData(const char *); + void toBoolean_test(const char *, const QScriptValue &value); + + void toDateTime_initData(); + void toDateTime_makeData(const char *); + void toDateTime_test(const char *, const QScriptValue &value); + + void toInt32_initData(); + void toInt32_makeData(const char *); + void toInt32_test(const char *, const QScriptValue &value); + + void toInteger_initData(); + void toInteger_makeData(const char *); + void toInteger_test(const char *, const QScriptValue &value); + + void toNumber_initData(); + void toNumber_makeData(const char *); + void toNumber_test(const char *, const QScriptValue &value); + + void toQMetaObject_initData(); + void toQMetaObject_makeData(const char *); + void toQMetaObject_test(const char *, const QScriptValue &value); + + void toQObject_initData(); + void toQObject_makeData(const char *); + void toQObject_test(const char *, const QScriptValue &value); + + void toRegExp_initData(); + void toRegExp_makeData(const char *); + void toRegExp_test(const char *, const QScriptValue &value); + + void toString_initData(); + void toString_makeData(const char *); + void toString_test(const char *, const QScriptValue &value); + + void toUInt16_initData(); + void toUInt16_makeData(const char *); + void toUInt16_test(const char *, const QScriptValue &value); + + void toUInt32_initData(); + void toUInt32_makeData(const char *); + void toUInt32_test(const char *, const QScriptValue &value); + + void toVariant_initData(); + void toVariant_makeData(const char *); + void toVariant_test(const char *, const QScriptValue &value); + + void equals_initData(); + void equals_makeData(const char *); + void equals_test(const char *, const QScriptValue &value); + + void strictlyEquals_initData(); + void strictlyEquals_makeData(const char *); + void strictlyEquals_test(const char *, const QScriptValue &value); + + void lessThan_initData(); + void lessThan_makeData(const char *); + void lessThan_test(const char *, const QScriptValue &value); + + void instanceOf_initData(); + void instanceOf_makeData(const char *); + void instanceOf_test(const char *, const QScriptValue &value); + + void assignAndCopyConstruct_initData(); + void assignAndCopyConstruct_makeData(const char *); + void assignAndCopyConstruct_test(const char *, const QScriptValue &value); + + void qscriptvalue_castQString_initData(); + void qscriptvalue_castQString_makeData(const char *); + void qscriptvalue_castQString_test(const char *, const QScriptValue &value); + + void qscriptvalue_castqsreal_initData(); + void qscriptvalue_castqsreal_makeData(const char *); + void qscriptvalue_castqsreal_test(const char *, const QScriptValue &value); + + void qscriptvalue_castbool_initData(); + void qscriptvalue_castbool_makeData(const char *); + void qscriptvalue_castbool_test(const char *, const QScriptValue &value); + + void qscriptvalue_castqint32_initData(); + void qscriptvalue_castqint32_makeData(const char *); + void qscriptvalue_castqint32_test(const char *, const QScriptValue &value); + + void qscriptvalue_castquint32_initData(); + void qscriptvalue_castquint32_makeData(const char *); + void qscriptvalue_castquint32_test(const char *, const QScriptValue &value); + + void qscriptvalue_castquint16_initData(); + void qscriptvalue_castquint16_makeData(const char *); + void qscriptvalue_castquint16_test(const char *, const QScriptValue &value); + +private: + QScriptEngine *engine; + QHash m_values; + QString m_currentExpression; +}; + +#define DEFINE_TEST_FUNCTION(name) \ +void tst_QScriptValue::name##_data() { dataHelper(&tst_QScriptValue::name##_initData, &tst_QScriptValue::name##_makeData); } \ +void tst_QScriptValue::name() { testHelper(&tst_QScriptValue::name##_test); } + +#endif diff --git a/tests/auto/qscriptvalue/tst_qscriptvalue_generated.cpp b/tests/auto/qscriptvalue/tst_qscriptvalue_generated.cpp new file mode 100644 index 0000000..6a59509 --- /dev/null +++ b/tests/auto/qscriptvalue/tst_qscriptvalue_generated.cpp @@ -0,0 +1,6347 @@ +/* + Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "tst_qscriptvalue.h" + +#define DEFINE_TEST_VALUE(expr) m_values.insert(QString::fromLatin1(#expr), expr) + +void tst_QScriptValue::initScriptValues() +{ + m_values.clear(); + if (engine) + delete engine; + engine = new QScriptEngine; + DEFINE_TEST_VALUE(QScriptValue()); + DEFINE_TEST_VALUE(QScriptValue(QScriptValue::UndefinedValue)); + DEFINE_TEST_VALUE(QScriptValue(QScriptValue::NullValue)); + DEFINE_TEST_VALUE(QScriptValue(true)); + DEFINE_TEST_VALUE(QScriptValue(false)); + DEFINE_TEST_VALUE(QScriptValue(int(122))); + DEFINE_TEST_VALUE(QScriptValue(uint(124))); + DEFINE_TEST_VALUE(QScriptValue(0)); + DEFINE_TEST_VALUE(QScriptValue(0.0)); + DEFINE_TEST_VALUE(QScriptValue(123.0)); + DEFINE_TEST_VALUE(QScriptValue(6.37e-8)); + DEFINE_TEST_VALUE(QScriptValue(-6.37e-8)); + DEFINE_TEST_VALUE(QScriptValue(0x43211234)); + DEFINE_TEST_VALUE(QScriptValue(0x10000)); + DEFINE_TEST_VALUE(QScriptValue(0x10001)); + DEFINE_TEST_VALUE(QScriptValue(qSNaN())); + DEFINE_TEST_VALUE(QScriptValue(qQNaN())); + DEFINE_TEST_VALUE(QScriptValue(qInf())); + DEFINE_TEST_VALUE(QScriptValue(-qInf())); + DEFINE_TEST_VALUE(QScriptValue("NaN")); + DEFINE_TEST_VALUE(QScriptValue("Infinity")); + DEFINE_TEST_VALUE(QScriptValue("-Infinity")); + DEFINE_TEST_VALUE(QScriptValue("ciao")); + DEFINE_TEST_VALUE(QScriptValue(QString::fromLatin1("ciao"))); + DEFINE_TEST_VALUE(QScriptValue(QString(""))); + DEFINE_TEST_VALUE(QScriptValue(QString())); + DEFINE_TEST_VALUE(QScriptValue(QString("0"))); + DEFINE_TEST_VALUE(QScriptValue(QString("123"))); + DEFINE_TEST_VALUE(QScriptValue(QString("12.4"))); + DEFINE_TEST_VALUE(QScriptValue(0, QScriptValue::UndefinedValue)); + DEFINE_TEST_VALUE(QScriptValue(0, QScriptValue::NullValue)); + DEFINE_TEST_VALUE(QScriptValue(0, true)); + DEFINE_TEST_VALUE(QScriptValue(0, false)); + DEFINE_TEST_VALUE(QScriptValue(0, int(122))); + DEFINE_TEST_VALUE(QScriptValue(0, uint(124))); + DEFINE_TEST_VALUE(QScriptValue(0, 0)); + DEFINE_TEST_VALUE(QScriptValue(0, 0.0)); + DEFINE_TEST_VALUE(QScriptValue(0, 123.0)); + DEFINE_TEST_VALUE(QScriptValue(0, 6.37e-8)); + DEFINE_TEST_VALUE(QScriptValue(0, -6.37e-8)); + DEFINE_TEST_VALUE(QScriptValue(0, 0x43211234)); + DEFINE_TEST_VALUE(QScriptValue(0, 0x10000)); + DEFINE_TEST_VALUE(QScriptValue(0, 0x10001)); + DEFINE_TEST_VALUE(QScriptValue(0, qSNaN())); + DEFINE_TEST_VALUE(QScriptValue(0, qQNaN())); + DEFINE_TEST_VALUE(QScriptValue(0, qInf())); + DEFINE_TEST_VALUE(QScriptValue(0, -qInf())); + DEFINE_TEST_VALUE(QScriptValue(0, "NaN")); + DEFINE_TEST_VALUE(QScriptValue(0, "Infinity")); + DEFINE_TEST_VALUE(QScriptValue(0, "-Infinity")); + DEFINE_TEST_VALUE(QScriptValue(0, "ciao")); + DEFINE_TEST_VALUE(QScriptValue(0, QString::fromLatin1("ciao"))); + DEFINE_TEST_VALUE(QScriptValue(0, QString(""))); + DEFINE_TEST_VALUE(QScriptValue(0, QString())); + DEFINE_TEST_VALUE(QScriptValue(0, QString("0"))); + DEFINE_TEST_VALUE(QScriptValue(0, QString("123"))); + DEFINE_TEST_VALUE(QScriptValue(0, QString("12.3"))); + DEFINE_TEST_VALUE(QScriptValue(engine, QScriptValue::UndefinedValue)); + DEFINE_TEST_VALUE(QScriptValue(engine, QScriptValue::NullValue)); + DEFINE_TEST_VALUE(QScriptValue(engine, true)); + DEFINE_TEST_VALUE(QScriptValue(engine, false)); + DEFINE_TEST_VALUE(QScriptValue(engine, int(122))); + DEFINE_TEST_VALUE(QScriptValue(engine, uint(124))); + DEFINE_TEST_VALUE(QScriptValue(engine, 0)); + DEFINE_TEST_VALUE(QScriptValue(engine, 0.0)); + DEFINE_TEST_VALUE(QScriptValue(engine, 123.0)); + DEFINE_TEST_VALUE(QScriptValue(engine, 6.37e-8)); + DEFINE_TEST_VALUE(QScriptValue(engine, -6.37e-8)); + DEFINE_TEST_VALUE(QScriptValue(engine, 0x43211234)); + DEFINE_TEST_VALUE(QScriptValue(engine, 0x10000)); + DEFINE_TEST_VALUE(QScriptValue(engine, 0x10001)); + DEFINE_TEST_VALUE(QScriptValue(engine, qSNaN())); + DEFINE_TEST_VALUE(QScriptValue(engine, qQNaN())); + DEFINE_TEST_VALUE(QScriptValue(engine, qInf())); + DEFINE_TEST_VALUE(QScriptValue(engine, -qInf())); + DEFINE_TEST_VALUE(QScriptValue(engine, "NaN")); + DEFINE_TEST_VALUE(QScriptValue(engine, "Infinity")); + DEFINE_TEST_VALUE(QScriptValue(engine, "-Infinity")); + DEFINE_TEST_VALUE(QScriptValue(engine, "ciao")); + DEFINE_TEST_VALUE(QScriptValue(engine, QString::fromLatin1("ciao"))); + DEFINE_TEST_VALUE(QScriptValue(engine, QString(""))); + DEFINE_TEST_VALUE(QScriptValue(engine, QString())); + DEFINE_TEST_VALUE(QScriptValue(engine, QString("0"))); + DEFINE_TEST_VALUE(QScriptValue(engine, QString("123"))); + DEFINE_TEST_VALUE(QScriptValue(engine, QString("1.23"))); + DEFINE_TEST_VALUE(engine->evaluate("[]")); + DEFINE_TEST_VALUE(engine->evaluate("{}")); + DEFINE_TEST_VALUE(engine->evaluate("Object.prototype")); + DEFINE_TEST_VALUE(engine->evaluate("Date.prototype")); + DEFINE_TEST_VALUE(engine->evaluate("Array.prototype")); + DEFINE_TEST_VALUE(engine->evaluate("Function.prototype")); + DEFINE_TEST_VALUE(engine->evaluate("Error.prototype")); + DEFINE_TEST_VALUE(engine->evaluate("Object")); + DEFINE_TEST_VALUE(engine->evaluate("Array")); + DEFINE_TEST_VALUE(engine->evaluate("Number")); + DEFINE_TEST_VALUE(engine->evaluate("Function")); + DEFINE_TEST_VALUE(engine->evaluate("(function() { return 1; })")); + DEFINE_TEST_VALUE(engine->evaluate("(function() { return 'ciao'; })")); + DEFINE_TEST_VALUE(engine->evaluate("(function() { throw new Error('foo'); })")); + DEFINE_TEST_VALUE(engine->evaluate("/foo/")); + DEFINE_TEST_VALUE(engine->evaluate("new Object()")); + DEFINE_TEST_VALUE(engine->evaluate("new Array()")); + DEFINE_TEST_VALUE(engine->evaluate("new Error()")); +} + + +void tst_QScriptValue::isValid_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isValid_makeData(const char* expr) +{ + static QSet isValid; + if (isValid.isEmpty()) { + isValid << "QScriptValue(QScriptValue::UndefinedValue)" + << "QScriptValue(QScriptValue::NullValue)" + << "QScriptValue(true)" + << "QScriptValue(false)" + << "QScriptValue(int(122))" + << "QScriptValue(uint(124))" + << "QScriptValue(0)" + << "QScriptValue(0.0)" + << "QScriptValue(123.0)" + << "QScriptValue(6.37e-8)" + << "QScriptValue(-6.37e-8)" + << "QScriptValue(0x43211234)" + << "QScriptValue(0x10000)" + << "QScriptValue(0x10001)" + << "QScriptValue(qSNaN())" + << "QScriptValue(qQNaN())" + << "QScriptValue(qInf())" + << "QScriptValue(-qInf())" + << "QScriptValue(\"NaN\")" + << "QScriptValue(\"Infinity\")" + << "QScriptValue(\"-Infinity\")" + << "QScriptValue(\"ciao\")" + << "QScriptValue(QString::fromLatin1(\"ciao\"))" + << "QScriptValue(QString(\"\"))" + << "QScriptValue(QString())" + << "QScriptValue(QString(\"0\"))" + << "QScriptValue(QString(\"123\"))" + << "QScriptValue(QString(\"12.4\"))" + << "QScriptValue(0, QScriptValue::UndefinedValue)" + << "QScriptValue(0, QScriptValue::NullValue)" + << "QScriptValue(0, true)" + << "QScriptValue(0, false)" + << "QScriptValue(0, int(122))" + << "QScriptValue(0, uint(124))" + << "QScriptValue(0, 0)" + << "QScriptValue(0, 0.0)" + << "QScriptValue(0, 123.0)" + << "QScriptValue(0, 6.37e-8)" + << "QScriptValue(0, -6.37e-8)" + << "QScriptValue(0, 0x43211234)" + << "QScriptValue(0, 0x10000)" + << "QScriptValue(0, 0x10001)" + << "QScriptValue(0, qSNaN())" + << "QScriptValue(0, qQNaN())" + << "QScriptValue(0, qInf())" + << "QScriptValue(0, -qInf())" + << "QScriptValue(0, \"NaN\")" + << "QScriptValue(0, \"Infinity\")" + << "QScriptValue(0, \"-Infinity\")" + << "QScriptValue(0, \"ciao\")" + << "QScriptValue(0, QString::fromLatin1(\"ciao\"))" + << "QScriptValue(0, QString(\"\"))" + << "QScriptValue(0, QString())" + << "QScriptValue(0, QString(\"0\"))" + << "QScriptValue(0, QString(\"123\"))" + << "QScriptValue(0, QString(\"12.3\"))" + << "QScriptValue(engine, QScriptValue::UndefinedValue)" + << "QScriptValue(engine, QScriptValue::NullValue)" + << "QScriptValue(engine, true)" + << "QScriptValue(engine, false)" + << "QScriptValue(engine, int(122))" + << "QScriptValue(engine, uint(124))" + << "QScriptValue(engine, 0)" + << "QScriptValue(engine, 0.0)" + << "QScriptValue(engine, 123.0)" + << "QScriptValue(engine, 6.37e-8)" + << "QScriptValue(engine, -6.37e-8)" + << "QScriptValue(engine, 0x43211234)" + << "QScriptValue(engine, 0x10000)" + << "QScriptValue(engine, 0x10001)" + << "QScriptValue(engine, qSNaN())" + << "QScriptValue(engine, qQNaN())" + << "QScriptValue(engine, qInf())" + << "QScriptValue(engine, -qInf())" + << "QScriptValue(engine, \"NaN\")" + << "QScriptValue(engine, \"Infinity\")" + << "QScriptValue(engine, \"-Infinity\")" + << "QScriptValue(engine, \"ciao\")" + << "QScriptValue(engine, QString::fromLatin1(\"ciao\"))" + << "QScriptValue(engine, QString(\"\"))" + << "QScriptValue(engine, QString())" + << "QScriptValue(engine, QString(\"0\"))" + << "QScriptValue(engine, QString(\"123\"))" + << "QScriptValue(engine, QString(\"1.23\"))" + << "engine->evaluate(\"[]\")" + << "engine->evaluate(\"{}\")" + << "engine->evaluate(\"Object.prototype\")" + << "engine->evaluate(\"Date.prototype\")" + << "engine->evaluate(\"Array.prototype\")" + << "engine->evaluate(\"Function.prototype\")" + << "engine->evaluate(\"Error.prototype\")" + << "engine->evaluate(\"Object\")" + << "engine->evaluate(\"Array\")" + << "engine->evaluate(\"Number\")" + << "engine->evaluate(\"Function\")" + << "engine->evaluate(\"(function() { return 1; })\")" + << "engine->evaluate(\"(function() { return 'ciao'; })\")" + << "engine->evaluate(\"(function() { throw new Error('foo'); })\")" + << "engine->evaluate(\"/foo/\")" + << "engine->evaluate(\"new Object()\")" + << "engine->evaluate(\"new Array()\")" + << "engine->evaluate(\"new Error()\")" + ; + } + newRow(expr) << isValid.contains(expr); +} + +void tst_QScriptValue::isValid_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isValid(), expected); +} + +DEFINE_TEST_FUNCTION(isValid) + + +void tst_QScriptValue::isBool_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isBool_makeData(const char* expr) +{ + static QSet isBool; + if (isBool.isEmpty()) { + isBool << "QScriptValue(true)" + << "QScriptValue(false)" + << "QScriptValue(0, true)" + << "QScriptValue(0, false)" + << "QScriptValue(engine, true)" + << "QScriptValue(engine, false)" + ; + } + newRow(expr) << isBool.contains(expr); +} + +void tst_QScriptValue::isBool_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isBool(), expected); +} + +DEFINE_TEST_FUNCTION(isBool) + + +void tst_QScriptValue::isBoolean_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isBoolean_makeData(const char* expr) +{ + static QSet isBoolean; + if (isBoolean.isEmpty()) { + isBoolean << "QScriptValue(true)" + << "QScriptValue(false)" + << "QScriptValue(0, true)" + << "QScriptValue(0, false)" + << "QScriptValue(engine, true)" + << "QScriptValue(engine, false)" + ; + } + newRow(expr) << isBoolean.contains(expr); +} + +void tst_QScriptValue::isBoolean_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isBoolean(), expected); +} + +DEFINE_TEST_FUNCTION(isBoolean) + + +void tst_QScriptValue::isNumber_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isNumber_makeData(const char* expr) +{ + static QSet isNumber; + if (isNumber.isEmpty()) { + isNumber << "QScriptValue(int(122))" + << "QScriptValue(uint(124))" + << "QScriptValue(0)" + << "QScriptValue(0.0)" + << "QScriptValue(123.0)" + << "QScriptValue(6.37e-8)" + << "QScriptValue(-6.37e-8)" + << "QScriptValue(0x43211234)" + << "QScriptValue(0x10000)" + << "QScriptValue(0x10001)" + << "QScriptValue(qSNaN())" + << "QScriptValue(qQNaN())" + << "QScriptValue(qInf())" + << "QScriptValue(-qInf())" + << "QScriptValue(0, int(122))" + << "QScriptValue(0, uint(124))" + << "QScriptValue(0, 0)" + << "QScriptValue(0, 0.0)" + << "QScriptValue(0, 123.0)" + << "QScriptValue(0, 6.37e-8)" + << "QScriptValue(0, -6.37e-8)" + << "QScriptValue(0, 0x43211234)" + << "QScriptValue(0, 0x10000)" + << "QScriptValue(0, 0x10001)" + << "QScriptValue(0, qSNaN())" + << "QScriptValue(0, qQNaN())" + << "QScriptValue(0, qInf())" + << "QScriptValue(0, -qInf())" + << "QScriptValue(engine, int(122))" + << "QScriptValue(engine, uint(124))" + << "QScriptValue(engine, 0)" + << "QScriptValue(engine, 0.0)" + << "QScriptValue(engine, 123.0)" + << "QScriptValue(engine, 6.37e-8)" + << "QScriptValue(engine, -6.37e-8)" + << "QScriptValue(engine, 0x43211234)" + << "QScriptValue(engine, 0x10000)" + << "QScriptValue(engine, 0x10001)" + << "QScriptValue(engine, qSNaN())" + << "QScriptValue(engine, qQNaN())" + << "QScriptValue(engine, qInf())" + << "QScriptValue(engine, -qInf())" + ; + } + newRow(expr) << isNumber.contains(expr); +} + +void tst_QScriptValue::isNumber_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isNumber(), expected); +} + +DEFINE_TEST_FUNCTION(isNumber) + + +void tst_QScriptValue::isFunction_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isFunction_makeData(const char* expr) +{ + static QSet isFunction; + if (isFunction.isEmpty()) { + isFunction << "engine->evaluate(\"Function.prototype\")" + << "engine->evaluate(\"Object\")" + << "engine->evaluate(\"Array\")" + << "engine->evaluate(\"Number\")" + << "engine->evaluate(\"Function\")" + << "engine->evaluate(\"(function() { return 1; })\")" + << "engine->evaluate(\"(function() { return 'ciao'; })\")" + << "engine->evaluate(\"(function() { throw new Error('foo'); })\")" + << "engine->evaluate(\"/foo/\")" + ; + } + newRow(expr) << isFunction.contains(expr); +} + +void tst_QScriptValue::isFunction_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isFunction(), expected); +} + +DEFINE_TEST_FUNCTION(isFunction) + + +void tst_QScriptValue::isNull_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isNull_makeData(const char* expr) +{ + static QSet isNull; + if (isNull.isEmpty()) { + isNull << "QScriptValue(QScriptValue::NullValue)" + << "QScriptValue(0, QScriptValue::NullValue)" + << "QScriptValue(engine, QScriptValue::NullValue)" + ; + } + newRow(expr) << isNull.contains(expr); +} + +void tst_QScriptValue::isNull_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isNull(), expected); +} + +DEFINE_TEST_FUNCTION(isNull) + + +void tst_QScriptValue::isString_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isString_makeData(const char* expr) +{ + static QSet isString; + if (isString.isEmpty()) { + isString << "QScriptValue(\"NaN\")" + << "QScriptValue(\"Infinity\")" + << "QScriptValue(\"-Infinity\")" + << "QScriptValue(\"ciao\")" + << "QScriptValue(QString::fromLatin1(\"ciao\"))" + << "QScriptValue(QString(\"\"))" + << "QScriptValue(QString())" + << "QScriptValue(QString(\"0\"))" + << "QScriptValue(QString(\"123\"))" + << "QScriptValue(QString(\"12.4\"))" + << "QScriptValue(0, \"NaN\")" + << "QScriptValue(0, \"Infinity\")" + << "QScriptValue(0, \"-Infinity\")" + << "QScriptValue(0, \"ciao\")" + << "QScriptValue(0, QString::fromLatin1(\"ciao\"))" + << "QScriptValue(0, QString(\"\"))" + << "QScriptValue(0, QString())" + << "QScriptValue(0, QString(\"0\"))" + << "QScriptValue(0, QString(\"123\"))" + << "QScriptValue(0, QString(\"12.3\"))" + << "QScriptValue(engine, \"NaN\")" + << "QScriptValue(engine, \"Infinity\")" + << "QScriptValue(engine, \"-Infinity\")" + << "QScriptValue(engine, \"ciao\")" + << "QScriptValue(engine, QString::fromLatin1(\"ciao\"))" + << "QScriptValue(engine, QString(\"\"))" + << "QScriptValue(engine, QString())" + << "QScriptValue(engine, QString(\"0\"))" + << "QScriptValue(engine, QString(\"123\"))" + << "QScriptValue(engine, QString(\"1.23\"))" + ; + } + newRow(expr) << isString.contains(expr); +} + +void tst_QScriptValue::isString_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isString(), expected); +} + +DEFINE_TEST_FUNCTION(isString) + + +void tst_QScriptValue::isUndefined_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isUndefined_makeData(const char* expr) +{ + static QSet isUndefined; + if (isUndefined.isEmpty()) { + isUndefined << "QScriptValue(QScriptValue::UndefinedValue)" + << "QScriptValue(0, QScriptValue::UndefinedValue)" + << "QScriptValue(engine, QScriptValue::UndefinedValue)" + << "engine->evaluate(\"{}\")" + ; + } + newRow(expr) << isUndefined.contains(expr); +} + +void tst_QScriptValue::isUndefined_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isUndefined(), expected); +} + +DEFINE_TEST_FUNCTION(isUndefined) + + + + + +void tst_QScriptValue::isObject_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isObject_makeData(const char* expr) +{ + static QSet isObject; + if (isObject.isEmpty()) { + isObject << "engine->evaluate(\"[]\")" + << "engine->evaluate(\"Object.prototype\")" + << "engine->evaluate(\"Date.prototype\")" + << "engine->evaluate(\"Array.prototype\")" + << "engine->evaluate(\"Function.prototype\")" + << "engine->evaluate(\"Error.prototype\")" + << "engine->evaluate(\"Object\")" + << "engine->evaluate(\"Array\")" + << "engine->evaluate(\"Number\")" + << "engine->evaluate(\"Function\")" + << "engine->evaluate(\"(function() { return 1; })\")" + << "engine->evaluate(\"(function() { return 'ciao'; })\")" + << "engine->evaluate(\"(function() { throw new Error('foo'); })\")" + << "engine->evaluate(\"/foo/\")" + << "engine->evaluate(\"new Object()\")" + << "engine->evaluate(\"new Array()\")" + << "engine->evaluate(\"new Error()\")" + ; + } + newRow(expr) << isObject.contains(expr); +} + +void tst_QScriptValue::isObject_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isObject(), expected); +} + +DEFINE_TEST_FUNCTION(isObject) + + +void tst_QScriptValue::isDate_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isDate_makeData(const char* expr) +{ + static QSet isDate; + if (isDate.isEmpty()) { + isDate << "engine->evaluate(\"Date.prototype\")" + ; + } + newRow(expr) << isDate.contains(expr); +} + +void tst_QScriptValue::isDate_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isDate(), expected); +} + +DEFINE_TEST_FUNCTION(isDate) + + +void tst_QScriptValue::isRegExp_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isRegExp_makeData(const char* expr) +{ + static QSet isRegExp; + if (isRegExp.isEmpty()) { + isRegExp << "engine->evaluate(\"/foo/\")" + ; + } + newRow(expr) << isRegExp.contains(expr); +} + +void tst_QScriptValue::isRegExp_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isRegExp(), expected); +} + +DEFINE_TEST_FUNCTION(isRegExp) + + +void tst_QScriptValue::isArray_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isArray_makeData(const char* expr) +{ + static QSet isArray; + if (isArray.isEmpty()) { + isArray << "engine->evaluate(\"[]\")" + << "engine->evaluate(\"Array.prototype\")" + << "engine->evaluate(\"new Array()\")" + ; + } + newRow(expr) << isArray.contains(expr); +} + +void tst_QScriptValue::isArray_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isArray(), expected); +} + +DEFINE_TEST_FUNCTION(isArray) + + +void tst_QScriptValue::isError_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::isError_makeData(const char* expr) +{ + static QSet isError; + if (isError.isEmpty()) { + isError << "engine->evaluate(\"Error.prototype\")" + << "engine->evaluate(\"new Error()\")" + ; + } + newRow(expr) << isError.contains(expr); +} + +void tst_QScriptValue::isError_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.isError(), expected); +} + +DEFINE_TEST_FUNCTION(isError) + + + +void tst_QScriptValue::toString_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::toString_makeData(const char* expr) +{ + static QHash toString; + if (toString.isEmpty()) { + toString.insert("QScriptValue()", ""); + toString.insert("QScriptValue(QScriptValue::UndefinedValue)", "undefined"); + toString.insert("QScriptValue(QScriptValue::NullValue)", "null"); + toString.insert("QScriptValue(true)", "true"); + toString.insert("QScriptValue(false)", "false"); + toString.insert("QScriptValue(int(122))", "122"); + toString.insert("QScriptValue(uint(124))", "124"); + toString.insert("QScriptValue(0)", "0"); + toString.insert("QScriptValue(0.0)", "0"); + toString.insert("QScriptValue(123.0)", "123"); + toString.insert("QScriptValue(6.37e-8)", "6.37e-8"); + toString.insert("QScriptValue(-6.37e-8)", "-6.37e-8"); + toString.insert("QScriptValue(0x43211234)", "1126240820"); + toString.insert("QScriptValue(0x10000)", "65536"); + toString.insert("QScriptValue(0x10001)", "65537"); + toString.insert("QScriptValue(qSNaN())", "NaN"); + toString.insert("QScriptValue(qQNaN())", "NaN"); + toString.insert("QScriptValue(qInf())", "Infinity"); + toString.insert("QScriptValue(-qInf())", "-Infinity"); + toString.insert("QScriptValue(\"NaN\")", "NaN"); + toString.insert("QScriptValue(\"Infinity\")", "Infinity"); + toString.insert("QScriptValue(\"-Infinity\")", "-Infinity"); + toString.insert("QScriptValue(\"ciao\")", "ciao"); + toString.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", "ciao"); + toString.insert("QScriptValue(QString(\"\"))", ""); + toString.insert("QScriptValue(QString())", ""); + toString.insert("QScriptValue(QString(\"0\"))", "0"); + toString.insert("QScriptValue(QString(\"123\"))", "123"); + toString.insert("QScriptValue(QString(\"12.4\"))", "12.4"); + toString.insert("QScriptValue(0, QScriptValue::UndefinedValue)", "undefined"); + toString.insert("QScriptValue(0, QScriptValue::NullValue)", "null"); + toString.insert("QScriptValue(0, true)", "true"); + toString.insert("QScriptValue(0, false)", "false"); + toString.insert("QScriptValue(0, int(122))", "122"); + toString.insert("QScriptValue(0, uint(124))", "124"); + toString.insert("QScriptValue(0, 0)", "0"); + toString.insert("QScriptValue(0, 0.0)", "0"); + toString.insert("QScriptValue(0, 123.0)", "123"); + toString.insert("QScriptValue(0, 6.37e-8)", "6.37e-8"); + toString.insert("QScriptValue(0, -6.37e-8)", "-6.37e-8"); + toString.insert("QScriptValue(0, 0x43211234)", "1126240820"); + toString.insert("QScriptValue(0, 0x10000)", "65536"); + toString.insert("QScriptValue(0, 0x10001)", "65537"); + toString.insert("QScriptValue(0, qSNaN())", "NaN"); + toString.insert("QScriptValue(0, qQNaN())", "NaN"); + toString.insert("QScriptValue(0, qInf())", "Infinity"); + toString.insert("QScriptValue(0, -qInf())", "-Infinity"); + toString.insert("QScriptValue(0, \"NaN\")", "NaN"); + toString.insert("QScriptValue(0, \"Infinity\")", "Infinity"); + toString.insert("QScriptValue(0, \"-Infinity\")", "-Infinity"); + toString.insert("QScriptValue(0, \"ciao\")", "ciao"); + toString.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", "ciao"); + toString.insert("QScriptValue(0, QString(\"\"))", ""); + toString.insert("QScriptValue(0, QString())", ""); + toString.insert("QScriptValue(0, QString(\"0\"))", "0"); + toString.insert("QScriptValue(0, QString(\"123\"))", "123"); + toString.insert("QScriptValue(0, QString(\"12.3\"))", "12.3"); + toString.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", "undefined"); + toString.insert("QScriptValue(engine, QScriptValue::NullValue)", "null"); + toString.insert("QScriptValue(engine, true)", "true"); + toString.insert("QScriptValue(engine, false)", "false"); + toString.insert("QScriptValue(engine, int(122))", "122"); + toString.insert("QScriptValue(engine, uint(124))", "124"); + toString.insert("QScriptValue(engine, 0)", "0"); + toString.insert("QScriptValue(engine, 0.0)", "0"); + toString.insert("QScriptValue(engine, 123.0)", "123"); + toString.insert("QScriptValue(engine, 6.37e-8)", "6.37e-8"); + toString.insert("QScriptValue(engine, -6.37e-8)", "-6.37e-8"); + toString.insert("QScriptValue(engine, 0x43211234)", "1126240820"); + toString.insert("QScriptValue(engine, 0x10000)", "65536"); + toString.insert("QScriptValue(engine, 0x10001)", "65537"); + toString.insert("QScriptValue(engine, qSNaN())", "NaN"); + toString.insert("QScriptValue(engine, qQNaN())", "NaN"); + toString.insert("QScriptValue(engine, qInf())", "Infinity"); + toString.insert("QScriptValue(engine, -qInf())", "-Infinity"); + toString.insert("QScriptValue(engine, \"NaN\")", "NaN"); + toString.insert("QScriptValue(engine, \"Infinity\")", "Infinity"); + toString.insert("QScriptValue(engine, \"-Infinity\")", "-Infinity"); + toString.insert("QScriptValue(engine, \"ciao\")", "ciao"); + toString.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", "ciao"); + toString.insert("QScriptValue(engine, QString(\"\"))", ""); + toString.insert("QScriptValue(engine, QString())", ""); + toString.insert("QScriptValue(engine, QString(\"0\"))", "0"); + toString.insert("QScriptValue(engine, QString(\"123\"))", "123"); + toString.insert("QScriptValue(engine, QString(\"1.23\"))", "1.23"); + toString.insert("engine->evaluate(\"[]\")", ""); + toString.insert("engine->evaluate(\"{}\")", "undefined"); + toString.insert("engine->evaluate(\"Object.prototype\")", "[object Object]"); + toString.insert("engine->evaluate(\"Date.prototype\")", "Invalid Date"); + toString.insert("engine->evaluate(\"Array.prototype\")", ""); + toString.insert("engine->evaluate(\"Function.prototype\")", "function () {\n [native code]\n}"); + toString.insert("engine->evaluate(\"Error.prototype\")", "Error: Unknown error"); + toString.insert("engine->evaluate(\"Object\")", "function Object() {\n [native code]\n}"); + toString.insert("engine->evaluate(\"Array\")", "function Array() {\n [native code]\n}"); + toString.insert("engine->evaluate(\"Number\")", "function Number() {\n [native code]\n}"); + toString.insert("engine->evaluate(\"Function\")", "function Function() {\n [native code]\n}"); + toString.insert("engine->evaluate(\"(function() { return 1; })\")", "function () { return 1; }"); + toString.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", "function () { return 'ciao'; }"); + toString.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", "function () { throw new Error('foo'); }"); + toString.insert("engine->evaluate(\"/foo/\")", "/foo/"); + toString.insert("engine->evaluate(\"new Object()\")", "[object Object]"); + toString.insert("engine->evaluate(\"new Array()\")", ""); + toString.insert("engine->evaluate(\"new Error()\")", "Error: Unknown error"); + } + newRow(expr) << toString.value(expr); +} + +void tst_QScriptValue::toString_test(const char*, const QScriptValue& value) +{ + QFETCH(QString, expected); + QCOMPARE(value.toString(), expected); +} + +DEFINE_TEST_FUNCTION(toString) + + +void tst_QScriptValue::toNumber_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::toNumber_makeData(const char* expr) +{ + static QHash toNumber; + if (toNumber.isEmpty()) { + toNumber.insert("QScriptValue()", 0); + toNumber.insert("QScriptValue(QScriptValue::UndefinedValue)", qQNaN()); + toNumber.insert("QScriptValue(QScriptValue::NullValue)", 0); + toNumber.insert("QScriptValue(true)", 1); + toNumber.insert("QScriptValue(false)", 0); + toNumber.insert("QScriptValue(int(122))", 122); + toNumber.insert("QScriptValue(uint(124))", 124); + toNumber.insert("QScriptValue(0)", 0); + toNumber.insert("QScriptValue(0.0)", 0); + toNumber.insert("QScriptValue(123.0)", 123); + toNumber.insert("QScriptValue(6.37e-8)", 6.369999999999999e-08); + toNumber.insert("QScriptValue(-6.37e-8)", -6.369999999999999e-08); + toNumber.insert("QScriptValue(0x43211234)", 1126240820); + toNumber.insert("QScriptValue(0x10000)", 65536); + toNumber.insert("QScriptValue(0x10001)", 65537); + toNumber.insert("QScriptValue(qSNaN())", qQNaN()); + toNumber.insert("QScriptValue(qQNaN())", qQNaN()); + toNumber.insert("QScriptValue(qInf())", qInf()); + toNumber.insert("QScriptValue(-qInf())", qInf()); + toNumber.insert("QScriptValue(\"NaN\")", qQNaN()); + toNumber.insert("QScriptValue(\"Infinity\")", qInf()); + toNumber.insert("QScriptValue(\"-Infinity\")", qInf()); + toNumber.insert("QScriptValue(\"ciao\")", qQNaN()); + toNumber.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", qQNaN()); + toNumber.insert("QScriptValue(QString(\"\"))", 0); + toNumber.insert("QScriptValue(QString())", 0); + toNumber.insert("QScriptValue(QString(\"0\"))", 0); + toNumber.insert("QScriptValue(QString(\"123\"))", 123); + toNumber.insert("QScriptValue(QString(\"12.4\"))", 12.4); + toNumber.insert("QScriptValue(0, QScriptValue::UndefinedValue)", qQNaN()); + toNumber.insert("QScriptValue(0, QScriptValue::NullValue)", 0); + toNumber.insert("QScriptValue(0, true)", 1); + toNumber.insert("QScriptValue(0, false)", 0); + toNumber.insert("QScriptValue(0, int(122))", 122); + toNumber.insert("QScriptValue(0, uint(124))", 124); + toNumber.insert("QScriptValue(0, 0)", 0); + toNumber.insert("QScriptValue(0, 0.0)", 0); + toNumber.insert("QScriptValue(0, 123.0)", 123); + toNumber.insert("QScriptValue(0, 6.37e-8)", 6.369999999999999e-08); + toNumber.insert("QScriptValue(0, -6.37e-8)", -6.369999999999999e-08); + toNumber.insert("QScriptValue(0, 0x43211234)", 1126240820); + toNumber.insert("QScriptValue(0, 0x10000)", 65536); + toNumber.insert("QScriptValue(0, 0x10001)", 65537); + toNumber.insert("QScriptValue(0, qSNaN())", qQNaN()); + toNumber.insert("QScriptValue(0, qQNaN())", qQNaN()); + toNumber.insert("QScriptValue(0, qInf())", qInf()); + toNumber.insert("QScriptValue(0, -qInf())", qInf()); + toNumber.insert("QScriptValue(0, \"NaN\")", qQNaN()); + toNumber.insert("QScriptValue(0, \"Infinity\")", qInf()); + toNumber.insert("QScriptValue(0, \"-Infinity\")", qInf()); + toNumber.insert("QScriptValue(0, \"ciao\")", qQNaN()); + toNumber.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", qQNaN()); + toNumber.insert("QScriptValue(0, QString(\"\"))", 0); + toNumber.insert("QScriptValue(0, QString())", 0); + toNumber.insert("QScriptValue(0, QString(\"0\"))", 0); + toNumber.insert("QScriptValue(0, QString(\"123\"))", 123); + toNumber.insert("QScriptValue(0, QString(\"12.3\"))", 12.3); + toNumber.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", qQNaN()); + toNumber.insert("QScriptValue(engine, QScriptValue::NullValue)", 0); + toNumber.insert("QScriptValue(engine, true)", 1); + toNumber.insert("QScriptValue(engine, false)", 0); + toNumber.insert("QScriptValue(engine, int(122))", 122); + toNumber.insert("QScriptValue(engine, uint(124))", 124); + toNumber.insert("QScriptValue(engine, 0)", 0); + toNumber.insert("QScriptValue(engine, 0.0)", 0); + toNumber.insert("QScriptValue(engine, 123.0)", 123); + toNumber.insert("QScriptValue(engine, 6.37e-8)", 6.369999999999999e-08); + toNumber.insert("QScriptValue(engine, -6.37e-8)", -6.369999999999999e-08); + toNumber.insert("QScriptValue(engine, 0x43211234)", 1126240820); + toNumber.insert("QScriptValue(engine, 0x10000)", 65536); + toNumber.insert("QScriptValue(engine, 0x10001)", 65537); + toNumber.insert("QScriptValue(engine, qSNaN())", qQNaN()); + toNumber.insert("QScriptValue(engine, qQNaN())", qQNaN()); + toNumber.insert("QScriptValue(engine, qInf())", qInf()); + toNumber.insert("QScriptValue(engine, -qInf())", qInf()); + toNumber.insert("QScriptValue(engine, \"NaN\")", qQNaN()); + toNumber.insert("QScriptValue(engine, \"Infinity\")", qInf()); + toNumber.insert("QScriptValue(engine, \"-Infinity\")", qInf()); + toNumber.insert("QScriptValue(engine, \"ciao\")", qQNaN()); + toNumber.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", qQNaN()); + toNumber.insert("QScriptValue(engine, QString(\"\"))", 0); + toNumber.insert("QScriptValue(engine, QString())", 0); + toNumber.insert("QScriptValue(engine, QString(\"0\"))", 0); + toNumber.insert("QScriptValue(engine, QString(\"123\"))", 123); + toNumber.insert("QScriptValue(engine, QString(\"1.23\"))", 1.23); + toNumber.insert("engine->evaluate(\"[]\")", 0); + toNumber.insert("engine->evaluate(\"{}\")", qQNaN()); + toNumber.insert("engine->evaluate(\"Object.prototype\")", qQNaN()); + toNumber.insert("engine->evaluate(\"Date.prototype\")", qQNaN()); + toNumber.insert("engine->evaluate(\"Array.prototype\")", 0); + toNumber.insert("engine->evaluate(\"Function.prototype\")", qQNaN()); + toNumber.insert("engine->evaluate(\"Error.prototype\")", qQNaN()); + toNumber.insert("engine->evaluate(\"Object\")", qQNaN()); + toNumber.insert("engine->evaluate(\"Array\")", qQNaN()); + toNumber.insert("engine->evaluate(\"Number\")", qQNaN()); + toNumber.insert("engine->evaluate(\"Function\")", qQNaN()); + toNumber.insert("engine->evaluate(\"(function() { return 1; })\")", qQNaN()); + toNumber.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", qQNaN()); + toNumber.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", qQNaN()); + toNumber.insert("engine->evaluate(\"/foo/\")", qQNaN()); + toNumber.insert("engine->evaluate(\"new Object()\")", qQNaN()); + toNumber.insert("engine->evaluate(\"new Array()\")", 0); + toNumber.insert("engine->evaluate(\"new Error()\")", qQNaN()); + } + newRow(expr) << toNumber.value(expr); +} + +void tst_QScriptValue::toNumber_test(const char*, const QScriptValue& value) +{ + QFETCH(qsreal, expected); + if (qIsNaN(expected)) { + QVERIFY(qIsNaN(value.toNumber())); + return; + } + if (qIsInf(expected)) { + QVERIFY(qIsInf(value.toNumber())); + return; + } + QCOMPARE(value.toNumber(), expected); +} + +DEFINE_TEST_FUNCTION(toNumber) + + +void tst_QScriptValue::toBool_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::toBool_makeData(const char* expr) +{ + static QHash toBool; + if (toBool.isEmpty()) { + toBool.insert("QScriptValue()", false); + toBool.insert("QScriptValue(QScriptValue::UndefinedValue)", false); + toBool.insert("QScriptValue(QScriptValue::NullValue)", false); + toBool.insert("QScriptValue(true)", true); + toBool.insert("QScriptValue(false)", false); + toBool.insert("QScriptValue(int(122))", true); + toBool.insert("QScriptValue(uint(124))", true); + toBool.insert("QScriptValue(0)", false); + toBool.insert("QScriptValue(0.0)", false); + toBool.insert("QScriptValue(123.0)", true); + toBool.insert("QScriptValue(6.37e-8)", true); + toBool.insert("QScriptValue(-6.37e-8)", true); + toBool.insert("QScriptValue(0x43211234)", true); + toBool.insert("QScriptValue(0x10000)", true); + toBool.insert("QScriptValue(0x10001)", true); + toBool.insert("QScriptValue(qSNaN())", false); + toBool.insert("QScriptValue(qQNaN())", false); + toBool.insert("QScriptValue(qInf())", true); + toBool.insert("QScriptValue(-qInf())", true); + toBool.insert("QScriptValue(\"NaN\")", true); + toBool.insert("QScriptValue(\"Infinity\")", true); + toBool.insert("QScriptValue(\"-Infinity\")", true); + toBool.insert("QScriptValue(\"ciao\")", true); + toBool.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", true); + toBool.insert("QScriptValue(QString(\"\"))", false); + toBool.insert("QScriptValue(QString())", false); + toBool.insert("QScriptValue(QString(\"0\"))", true); + toBool.insert("QScriptValue(QString(\"123\"))", true); + toBool.insert("QScriptValue(QString(\"12.4\"))", true); + toBool.insert("QScriptValue(0, QScriptValue::UndefinedValue)", false); + toBool.insert("QScriptValue(0, QScriptValue::NullValue)", false); + toBool.insert("QScriptValue(0, true)", true); + toBool.insert("QScriptValue(0, false)", false); + toBool.insert("QScriptValue(0, int(122))", true); + toBool.insert("QScriptValue(0, uint(124))", true); + toBool.insert("QScriptValue(0, 0)", false); + toBool.insert("QScriptValue(0, 0.0)", false); + toBool.insert("QScriptValue(0, 123.0)", true); + toBool.insert("QScriptValue(0, 6.37e-8)", true); + toBool.insert("QScriptValue(0, -6.37e-8)", true); + toBool.insert("QScriptValue(0, 0x43211234)", true); + toBool.insert("QScriptValue(0, 0x10000)", true); + toBool.insert("QScriptValue(0, 0x10001)", true); + toBool.insert("QScriptValue(0, qSNaN())", false); + toBool.insert("QScriptValue(0, qQNaN())", false); + toBool.insert("QScriptValue(0, qInf())", true); + toBool.insert("QScriptValue(0, -qInf())", true); + toBool.insert("QScriptValue(0, \"NaN\")", true); + toBool.insert("QScriptValue(0, \"Infinity\")", true); + toBool.insert("QScriptValue(0, \"-Infinity\")", true); + toBool.insert("QScriptValue(0, \"ciao\")", true); + toBool.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", true); + toBool.insert("QScriptValue(0, QString(\"\"))", false); + toBool.insert("QScriptValue(0, QString())", false); + toBool.insert("QScriptValue(0, QString(\"0\"))", true); + toBool.insert("QScriptValue(0, QString(\"123\"))", true); + toBool.insert("QScriptValue(0, QString(\"12.3\"))", true); + toBool.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", false); + toBool.insert("QScriptValue(engine, QScriptValue::NullValue)", false); + toBool.insert("QScriptValue(engine, true)", true); + toBool.insert("QScriptValue(engine, false)", false); + toBool.insert("QScriptValue(engine, int(122))", true); + toBool.insert("QScriptValue(engine, uint(124))", true); + toBool.insert("QScriptValue(engine, 0)", false); + toBool.insert("QScriptValue(engine, 0.0)", false); + toBool.insert("QScriptValue(engine, 123.0)", true); + toBool.insert("QScriptValue(engine, 6.37e-8)", true); + toBool.insert("QScriptValue(engine, -6.37e-8)", true); + toBool.insert("QScriptValue(engine, 0x43211234)", true); + toBool.insert("QScriptValue(engine, 0x10000)", true); + toBool.insert("QScriptValue(engine, 0x10001)", true); + toBool.insert("QScriptValue(engine, qSNaN())", false); + toBool.insert("QScriptValue(engine, qQNaN())", false); + toBool.insert("QScriptValue(engine, qInf())", true); + toBool.insert("QScriptValue(engine, -qInf())", true); + toBool.insert("QScriptValue(engine, \"NaN\")", true); + toBool.insert("QScriptValue(engine, \"Infinity\")", true); + toBool.insert("QScriptValue(engine, \"-Infinity\")", true); + toBool.insert("QScriptValue(engine, \"ciao\")", true); + toBool.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", true); + toBool.insert("QScriptValue(engine, QString(\"\"))", false); + toBool.insert("QScriptValue(engine, QString())", false); + toBool.insert("QScriptValue(engine, QString(\"0\"))", true); + toBool.insert("QScriptValue(engine, QString(\"123\"))", true); + toBool.insert("QScriptValue(engine, QString(\"1.23\"))", true); + toBool.insert("engine->evaluate(\"[]\")", true); + toBool.insert("engine->evaluate(\"{}\")", false); + toBool.insert("engine->evaluate(\"Object.prototype\")", true); + toBool.insert("engine->evaluate(\"Date.prototype\")", true); + toBool.insert("engine->evaluate(\"Array.prototype\")", true); + toBool.insert("engine->evaluate(\"Function.prototype\")", true); + toBool.insert("engine->evaluate(\"Error.prototype\")", true); + toBool.insert("engine->evaluate(\"Object\")", true); + toBool.insert("engine->evaluate(\"Array\")", true); + toBool.insert("engine->evaluate(\"Number\")", true); + toBool.insert("engine->evaluate(\"Function\")", true); + toBool.insert("engine->evaluate(\"(function() { return 1; })\")", true); + toBool.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", true); + toBool.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", true); + toBool.insert("engine->evaluate(\"/foo/\")", true); + toBool.insert("engine->evaluate(\"new Object()\")", true); + toBool.insert("engine->evaluate(\"new Array()\")", true); + toBool.insert("engine->evaluate(\"new Error()\")", true); + } + newRow(expr) << toBool.value(expr); +} + +void tst_QScriptValue::toBool_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.toBool(), expected); +} + +DEFINE_TEST_FUNCTION(toBool) + + +void tst_QScriptValue::toBoolean_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::toBoolean_makeData(const char* expr) +{ + static QHash toBoolean; + if (toBoolean.isEmpty()) { + toBoolean.insert("QScriptValue()", false); + toBoolean.insert("QScriptValue(QScriptValue::UndefinedValue)", false); + toBoolean.insert("QScriptValue(QScriptValue::NullValue)", false); + toBoolean.insert("QScriptValue(true)", true); + toBoolean.insert("QScriptValue(false)", false); + toBoolean.insert("QScriptValue(int(122))", true); + toBoolean.insert("QScriptValue(uint(124))", true); + toBoolean.insert("QScriptValue(0)", false); + toBoolean.insert("QScriptValue(0.0)", false); + toBoolean.insert("QScriptValue(123.0)", true); + toBoolean.insert("QScriptValue(6.37e-8)", true); + toBoolean.insert("QScriptValue(-6.37e-8)", true); + toBoolean.insert("QScriptValue(0x43211234)", true); + toBoolean.insert("QScriptValue(0x10000)", true); + toBoolean.insert("QScriptValue(0x10001)", true); + toBoolean.insert("QScriptValue(qSNaN())", false); + toBoolean.insert("QScriptValue(qQNaN())", false); + toBoolean.insert("QScriptValue(qInf())", true); + toBoolean.insert("QScriptValue(-qInf())", true); + toBoolean.insert("QScriptValue(\"NaN\")", true); + toBoolean.insert("QScriptValue(\"Infinity\")", true); + toBoolean.insert("QScriptValue(\"-Infinity\")", true); + toBoolean.insert("QScriptValue(\"ciao\")", true); + toBoolean.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", true); + toBoolean.insert("QScriptValue(QString(\"\"))", false); + toBoolean.insert("QScriptValue(QString())", false); + toBoolean.insert("QScriptValue(QString(\"0\"))", true); + toBoolean.insert("QScriptValue(QString(\"123\"))", true); + toBoolean.insert("QScriptValue(QString(\"12.4\"))", true); + toBoolean.insert("QScriptValue(0, QScriptValue::UndefinedValue)", false); + toBoolean.insert("QScriptValue(0, QScriptValue::NullValue)", false); + toBoolean.insert("QScriptValue(0, true)", true); + toBoolean.insert("QScriptValue(0, false)", false); + toBoolean.insert("QScriptValue(0, int(122))", true); + toBoolean.insert("QScriptValue(0, uint(124))", true); + toBoolean.insert("QScriptValue(0, 0)", false); + toBoolean.insert("QScriptValue(0, 0.0)", false); + toBoolean.insert("QScriptValue(0, 123.0)", true); + toBoolean.insert("QScriptValue(0, 6.37e-8)", true); + toBoolean.insert("QScriptValue(0, -6.37e-8)", true); + toBoolean.insert("QScriptValue(0, 0x43211234)", true); + toBoolean.insert("QScriptValue(0, 0x10000)", true); + toBoolean.insert("QScriptValue(0, 0x10001)", true); + toBoolean.insert("QScriptValue(0, qSNaN())", false); + toBoolean.insert("QScriptValue(0, qQNaN())", false); + toBoolean.insert("QScriptValue(0, qInf())", true); + toBoolean.insert("QScriptValue(0, -qInf())", true); + toBoolean.insert("QScriptValue(0, \"NaN\")", true); + toBoolean.insert("QScriptValue(0, \"Infinity\")", true); + toBoolean.insert("QScriptValue(0, \"-Infinity\")", true); + toBoolean.insert("QScriptValue(0, \"ciao\")", true); + toBoolean.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", true); + toBoolean.insert("QScriptValue(0, QString(\"\"))", false); + toBoolean.insert("QScriptValue(0, QString())", false); + toBoolean.insert("QScriptValue(0, QString(\"0\"))", true); + toBoolean.insert("QScriptValue(0, QString(\"123\"))", true); + toBoolean.insert("QScriptValue(0, QString(\"12.3\"))", true); + toBoolean.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", false); + toBoolean.insert("QScriptValue(engine, QScriptValue::NullValue)", false); + toBoolean.insert("QScriptValue(engine, true)", true); + toBoolean.insert("QScriptValue(engine, false)", false); + toBoolean.insert("QScriptValue(engine, int(122))", true); + toBoolean.insert("QScriptValue(engine, uint(124))", true); + toBoolean.insert("QScriptValue(engine, 0)", false); + toBoolean.insert("QScriptValue(engine, 0.0)", false); + toBoolean.insert("QScriptValue(engine, 123.0)", true); + toBoolean.insert("QScriptValue(engine, 6.37e-8)", true); + toBoolean.insert("QScriptValue(engine, -6.37e-8)", true); + toBoolean.insert("QScriptValue(engine, 0x43211234)", true); + toBoolean.insert("QScriptValue(engine, 0x10000)", true); + toBoolean.insert("QScriptValue(engine, 0x10001)", true); + toBoolean.insert("QScriptValue(engine, qSNaN())", false); + toBoolean.insert("QScriptValue(engine, qQNaN())", false); + toBoolean.insert("QScriptValue(engine, qInf())", true); + toBoolean.insert("QScriptValue(engine, -qInf())", true); + toBoolean.insert("QScriptValue(engine, \"NaN\")", true); + toBoolean.insert("QScriptValue(engine, \"Infinity\")", true); + toBoolean.insert("QScriptValue(engine, \"-Infinity\")", true); + toBoolean.insert("QScriptValue(engine, \"ciao\")", true); + toBoolean.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", true); + toBoolean.insert("QScriptValue(engine, QString(\"\"))", false); + toBoolean.insert("QScriptValue(engine, QString())", false); + toBoolean.insert("QScriptValue(engine, QString(\"0\"))", true); + toBoolean.insert("QScriptValue(engine, QString(\"123\"))", true); + toBoolean.insert("QScriptValue(engine, QString(\"1.23\"))", true); + toBoolean.insert("engine->evaluate(\"[]\")", true); + toBoolean.insert("engine->evaluate(\"{}\")", false); + toBoolean.insert("engine->evaluate(\"Object.prototype\")", true); + toBoolean.insert("engine->evaluate(\"Date.prototype\")", true); + toBoolean.insert("engine->evaluate(\"Array.prototype\")", true); + toBoolean.insert("engine->evaluate(\"Function.prototype\")", true); + toBoolean.insert("engine->evaluate(\"Error.prototype\")", true); + toBoolean.insert("engine->evaluate(\"Object\")", true); + toBoolean.insert("engine->evaluate(\"Array\")", true); + toBoolean.insert("engine->evaluate(\"Number\")", true); + toBoolean.insert("engine->evaluate(\"Function\")", true); + toBoolean.insert("engine->evaluate(\"(function() { return 1; })\")", true); + toBoolean.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", true); + toBoolean.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", true); + toBoolean.insert("engine->evaluate(\"/foo/\")", true); + toBoolean.insert("engine->evaluate(\"new Object()\")", true); + toBoolean.insert("engine->evaluate(\"new Array()\")", true); + toBoolean.insert("engine->evaluate(\"new Error()\")", true); + } + newRow(expr) << toBoolean.value(expr); +} + +void tst_QScriptValue::toBoolean_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(value.toBoolean(), expected); +} + +DEFINE_TEST_FUNCTION(toBoolean) + + +void tst_QScriptValue::toInteger_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::toInteger_makeData(const char* expr) +{ + static QHash toInteger; + if (toInteger.isEmpty()) { + toInteger.insert("QScriptValue()", 0); + toInteger.insert("QScriptValue(QScriptValue::UndefinedValue)", 0); + toInteger.insert("QScriptValue(QScriptValue::NullValue)", 0); + toInteger.insert("QScriptValue(true)", 1); + toInteger.insert("QScriptValue(false)", 0); + toInteger.insert("QScriptValue(int(122))", 122); + toInteger.insert("QScriptValue(uint(124))", 124); + toInteger.insert("QScriptValue(0)", 0); + toInteger.insert("QScriptValue(0.0)", 0); + toInteger.insert("QScriptValue(123.0)", 123); + toInteger.insert("QScriptValue(6.37e-8)", 0); + toInteger.insert("QScriptValue(-6.37e-8)", 0); + toInteger.insert("QScriptValue(0x43211234)", 1126240820); + toInteger.insert("QScriptValue(0x10000)", 65536); + toInteger.insert("QScriptValue(0x10001)", 65537); + toInteger.insert("QScriptValue(qSNaN())", 0); + toInteger.insert("QScriptValue(qQNaN())", 0); + toInteger.insert("QScriptValue(qInf())", qInf()); + toInteger.insert("QScriptValue(-qInf())", qInf()); + toInteger.insert("QScriptValue(\"NaN\")", 0); + toInteger.insert("QScriptValue(\"Infinity\")", qInf()); + toInteger.insert("QScriptValue(\"-Infinity\")", qInf()); + toInteger.insert("QScriptValue(\"ciao\")", 0); + toInteger.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0); + toInteger.insert("QScriptValue(QString(\"\"))", 0); + toInteger.insert("QScriptValue(QString())", 0); + toInteger.insert("QScriptValue(QString(\"0\"))", 0); + toInteger.insert("QScriptValue(QString(\"123\"))", 123); + toInteger.insert("QScriptValue(QString(\"12.4\"))", 12); + toInteger.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0); + toInteger.insert("QScriptValue(0, QScriptValue::NullValue)", 0); + toInteger.insert("QScriptValue(0, true)", 1); + toInteger.insert("QScriptValue(0, false)", 0); + toInteger.insert("QScriptValue(0, int(122))", 122); + toInteger.insert("QScriptValue(0, uint(124))", 124); + toInteger.insert("QScriptValue(0, 0)", 0); + toInteger.insert("QScriptValue(0, 0.0)", 0); + toInteger.insert("QScriptValue(0, 123.0)", 123); + toInteger.insert("QScriptValue(0, 6.37e-8)", 0); + toInteger.insert("QScriptValue(0, -6.37e-8)", 0); + toInteger.insert("QScriptValue(0, 0x43211234)", 1126240820); + toInteger.insert("QScriptValue(0, 0x10000)", 65536); + toInteger.insert("QScriptValue(0, 0x10001)", 65537); + toInteger.insert("QScriptValue(0, qSNaN())", 0); + toInteger.insert("QScriptValue(0, qQNaN())", 0); + toInteger.insert("QScriptValue(0, qInf())", qInf()); + toInteger.insert("QScriptValue(0, -qInf())", qInf()); + toInteger.insert("QScriptValue(0, \"NaN\")", 0); + toInteger.insert("QScriptValue(0, \"Infinity\")", qInf()); + toInteger.insert("QScriptValue(0, \"-Infinity\")", qInf()); + toInteger.insert("QScriptValue(0, \"ciao\")", 0); + toInteger.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0); + toInteger.insert("QScriptValue(0, QString(\"\"))", 0); + toInteger.insert("QScriptValue(0, QString())", 0); + toInteger.insert("QScriptValue(0, QString(\"0\"))", 0); + toInteger.insert("QScriptValue(0, QString(\"123\"))", 123); + toInteger.insert("QScriptValue(0, QString(\"12.3\"))", 12); + toInteger.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0); + toInteger.insert("QScriptValue(engine, QScriptValue::NullValue)", 0); + toInteger.insert("QScriptValue(engine, true)", 1); + toInteger.insert("QScriptValue(engine, false)", 0); + toInteger.insert("QScriptValue(engine, int(122))", 122); + toInteger.insert("QScriptValue(engine, uint(124))", 124); + toInteger.insert("QScriptValue(engine, 0)", 0); + toInteger.insert("QScriptValue(engine, 0.0)", 0); + toInteger.insert("QScriptValue(engine, 123.0)", 123); + toInteger.insert("QScriptValue(engine, 6.37e-8)", 0); + toInteger.insert("QScriptValue(engine, -6.37e-8)", 0); + toInteger.insert("QScriptValue(engine, 0x43211234)", 1126240820); + toInteger.insert("QScriptValue(engine, 0x10000)", 65536); + toInteger.insert("QScriptValue(engine, 0x10001)", 65537); + toInteger.insert("QScriptValue(engine, qSNaN())", 0); + toInteger.insert("QScriptValue(engine, qQNaN())", 0); + toInteger.insert("QScriptValue(engine, qInf())", qInf()); + toInteger.insert("QScriptValue(engine, -qInf())", qInf()); + toInteger.insert("QScriptValue(engine, \"NaN\")", 0); + toInteger.insert("QScriptValue(engine, \"Infinity\")", qInf()); + toInteger.insert("QScriptValue(engine, \"-Infinity\")", qInf()); + toInteger.insert("QScriptValue(engine, \"ciao\")", 0); + toInteger.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0); + toInteger.insert("QScriptValue(engine, QString(\"\"))", 0); + toInteger.insert("QScriptValue(engine, QString())", 0); + toInteger.insert("QScriptValue(engine, QString(\"0\"))", 0); + toInteger.insert("QScriptValue(engine, QString(\"123\"))", 123); + toInteger.insert("QScriptValue(engine, QString(\"1.23\"))", 1); + toInteger.insert("engine->evaluate(\"[]\")", 0); + toInteger.insert("engine->evaluate(\"{}\")", 0); + toInteger.insert("engine->evaluate(\"Object.prototype\")", 0); + toInteger.insert("engine->evaluate(\"Date.prototype\")", 0); + toInteger.insert("engine->evaluate(\"Array.prototype\")", 0); + toInteger.insert("engine->evaluate(\"Function.prototype\")", 0); + toInteger.insert("engine->evaluate(\"Error.prototype\")", 0); + toInteger.insert("engine->evaluate(\"Object\")", 0); + toInteger.insert("engine->evaluate(\"Array\")", 0); + toInteger.insert("engine->evaluate(\"Number\")", 0); + toInteger.insert("engine->evaluate(\"Function\")", 0); + toInteger.insert("engine->evaluate(\"(function() { return 1; })\")", 0); + toInteger.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0); + toInteger.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0); + toInteger.insert("engine->evaluate(\"/foo/\")", 0); + toInteger.insert("engine->evaluate(\"new Object()\")", 0); + toInteger.insert("engine->evaluate(\"new Array()\")", 0); + toInteger.insert("engine->evaluate(\"new Error()\")", 0); + } + newRow(expr) << toInteger.value(expr); +} + +void tst_QScriptValue::toInteger_test(const char*, const QScriptValue& value) +{ + QFETCH(qsreal, expected); + if (qIsInf(expected)) { + QVERIFY(qIsInf(value.toInteger())); + return; + } + QCOMPARE(value.toInteger(), expected); +} + +DEFINE_TEST_FUNCTION(toInteger) + + +void tst_QScriptValue::toInt32_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::toInt32_makeData(const char* expr) +{ + static QHash toInt32; + if (toInt32.isEmpty()) { + toInt32.insert("QScriptValue()", 0); + toInt32.insert("QScriptValue(QScriptValue::UndefinedValue)", 0); + toInt32.insert("QScriptValue(QScriptValue::NullValue)", 0); + toInt32.insert("QScriptValue(true)", 1); + toInt32.insert("QScriptValue(false)", 0); + toInt32.insert("QScriptValue(int(122))", 122); + toInt32.insert("QScriptValue(uint(124))", 124); + toInt32.insert("QScriptValue(0)", 0); + toInt32.insert("QScriptValue(0.0)", 0); + toInt32.insert("QScriptValue(123.0)", 123); + toInt32.insert("QScriptValue(6.37e-8)", 0); + toInt32.insert("QScriptValue(-6.37e-8)", 0); + toInt32.insert("QScriptValue(0x43211234)", 1126240820); + toInt32.insert("QScriptValue(0x10000)", 65536); + toInt32.insert("QScriptValue(0x10001)", 65537); + toInt32.insert("QScriptValue(qSNaN())", 0); + toInt32.insert("QScriptValue(qQNaN())", 0); + toInt32.insert("QScriptValue(qInf())", 0); + toInt32.insert("QScriptValue(-qInf())", 0); + toInt32.insert("QScriptValue(\"NaN\")", 0); + toInt32.insert("QScriptValue(\"Infinity\")", 0); + toInt32.insert("QScriptValue(\"-Infinity\")", 0); + toInt32.insert("QScriptValue(\"ciao\")", 0); + toInt32.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0); + toInt32.insert("QScriptValue(QString(\"\"))", 0); + toInt32.insert("QScriptValue(QString())", 0); + toInt32.insert("QScriptValue(QString(\"0\"))", 0); + toInt32.insert("QScriptValue(QString(\"123\"))", 123); + toInt32.insert("QScriptValue(QString(\"12.4\"))", 12); + toInt32.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0); + toInt32.insert("QScriptValue(0, QScriptValue::NullValue)", 0); + toInt32.insert("QScriptValue(0, true)", 1); + toInt32.insert("QScriptValue(0, false)", 0); + toInt32.insert("QScriptValue(0, int(122))", 122); + toInt32.insert("QScriptValue(0, uint(124))", 124); + toInt32.insert("QScriptValue(0, 0)", 0); + toInt32.insert("QScriptValue(0, 0.0)", 0); + toInt32.insert("QScriptValue(0, 123.0)", 123); + toInt32.insert("QScriptValue(0, 6.37e-8)", 0); + toInt32.insert("QScriptValue(0, -6.37e-8)", 0); + toInt32.insert("QScriptValue(0, 0x43211234)", 1126240820); + toInt32.insert("QScriptValue(0, 0x10000)", 65536); + toInt32.insert("QScriptValue(0, 0x10001)", 65537); + toInt32.insert("QScriptValue(0, qSNaN())", 0); + toInt32.insert("QScriptValue(0, qQNaN())", 0); + toInt32.insert("QScriptValue(0, qInf())", 0); + toInt32.insert("QScriptValue(0, -qInf())", 0); + toInt32.insert("QScriptValue(0, \"NaN\")", 0); + toInt32.insert("QScriptValue(0, \"Infinity\")", 0); + toInt32.insert("QScriptValue(0, \"-Infinity\")", 0); + toInt32.insert("QScriptValue(0, \"ciao\")", 0); + toInt32.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0); + toInt32.insert("QScriptValue(0, QString(\"\"))", 0); + toInt32.insert("QScriptValue(0, QString())", 0); + toInt32.insert("QScriptValue(0, QString(\"0\"))", 0); + toInt32.insert("QScriptValue(0, QString(\"123\"))", 123); + toInt32.insert("QScriptValue(0, QString(\"12.3\"))", 12); + toInt32.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0); + toInt32.insert("QScriptValue(engine, QScriptValue::NullValue)", 0); + toInt32.insert("QScriptValue(engine, true)", 1); + toInt32.insert("QScriptValue(engine, false)", 0); + toInt32.insert("QScriptValue(engine, int(122))", 122); + toInt32.insert("QScriptValue(engine, uint(124))", 124); + toInt32.insert("QScriptValue(engine, 0)", 0); + toInt32.insert("QScriptValue(engine, 0.0)", 0); + toInt32.insert("QScriptValue(engine, 123.0)", 123); + toInt32.insert("QScriptValue(engine, 6.37e-8)", 0); + toInt32.insert("QScriptValue(engine, -6.37e-8)", 0); + toInt32.insert("QScriptValue(engine, 0x43211234)", 1126240820); + toInt32.insert("QScriptValue(engine, 0x10000)", 65536); + toInt32.insert("QScriptValue(engine, 0x10001)", 65537); + toInt32.insert("QScriptValue(engine, qSNaN())", 0); + toInt32.insert("QScriptValue(engine, qQNaN())", 0); + toInt32.insert("QScriptValue(engine, qInf())", 0); + toInt32.insert("QScriptValue(engine, -qInf())", 0); + toInt32.insert("QScriptValue(engine, \"NaN\")", 0); + toInt32.insert("QScriptValue(engine, \"Infinity\")", 0); + toInt32.insert("QScriptValue(engine, \"-Infinity\")", 0); + toInt32.insert("QScriptValue(engine, \"ciao\")", 0); + toInt32.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0); + toInt32.insert("QScriptValue(engine, QString(\"\"))", 0); + toInt32.insert("QScriptValue(engine, QString())", 0); + toInt32.insert("QScriptValue(engine, QString(\"0\"))", 0); + toInt32.insert("QScriptValue(engine, QString(\"123\"))", 123); + toInt32.insert("QScriptValue(engine, QString(\"1.23\"))", 1); + toInt32.insert("engine->evaluate(\"[]\")", 0); + toInt32.insert("engine->evaluate(\"{}\")", 0); + toInt32.insert("engine->evaluate(\"Object.prototype\")", 0); + toInt32.insert("engine->evaluate(\"Date.prototype\")", 0); + toInt32.insert("engine->evaluate(\"Array.prototype\")", 0); + toInt32.insert("engine->evaluate(\"Function.prototype\")", 0); + toInt32.insert("engine->evaluate(\"Error.prototype\")", 0); + toInt32.insert("engine->evaluate(\"Object\")", 0); + toInt32.insert("engine->evaluate(\"Array\")", 0); + toInt32.insert("engine->evaluate(\"Number\")", 0); + toInt32.insert("engine->evaluate(\"Function\")", 0); + toInt32.insert("engine->evaluate(\"(function() { return 1; })\")", 0); + toInt32.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0); + toInt32.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0); + toInt32.insert("engine->evaluate(\"/foo/\")", 0); + toInt32.insert("engine->evaluate(\"new Object()\")", 0); + toInt32.insert("engine->evaluate(\"new Array()\")", 0); + toInt32.insert("engine->evaluate(\"new Error()\")", 0); + } + newRow(expr) << toInt32.value(expr); +} + +void tst_QScriptValue::toInt32_test(const char*, const QScriptValue& value) +{ + QFETCH(qint32, expected); + QCOMPARE(value.toInt32(), expected); +} + +DEFINE_TEST_FUNCTION(toInt32) + + +void tst_QScriptValue::toUInt32_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::toUInt32_makeData(const char* expr) +{ + static QHash toUInt32; + if (toUInt32.isEmpty()) { + toUInt32.insert("QScriptValue()", 0); + toUInt32.insert("QScriptValue(QScriptValue::UndefinedValue)", 0); + toUInt32.insert("QScriptValue(QScriptValue::NullValue)", 0); + toUInt32.insert("QScriptValue(true)", 1); + toUInt32.insert("QScriptValue(false)", 0); + toUInt32.insert("QScriptValue(int(122))", 122); + toUInt32.insert("QScriptValue(uint(124))", 124); + toUInt32.insert("QScriptValue(0)", 0); + toUInt32.insert("QScriptValue(0.0)", 0); + toUInt32.insert("QScriptValue(123.0)", 123); + toUInt32.insert("QScriptValue(6.37e-8)", 0); + toUInt32.insert("QScriptValue(-6.37e-8)", 0); + toUInt32.insert("QScriptValue(0x43211234)", 1126240820); + toUInt32.insert("QScriptValue(0x10000)", 65536); + toUInt32.insert("QScriptValue(0x10001)", 65537); + toUInt32.insert("QScriptValue(qSNaN())", 0); + toUInt32.insert("QScriptValue(qQNaN())", 0); + toUInt32.insert("QScriptValue(qInf())", 0); + toUInt32.insert("QScriptValue(-qInf())", 0); + toUInt32.insert("QScriptValue(\"NaN\")", 0); + toUInt32.insert("QScriptValue(\"Infinity\")", 0); + toUInt32.insert("QScriptValue(\"-Infinity\")", 0); + toUInt32.insert("QScriptValue(\"ciao\")", 0); + toUInt32.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0); + toUInt32.insert("QScriptValue(QString(\"\"))", 0); + toUInt32.insert("QScriptValue(QString())", 0); + toUInt32.insert("QScriptValue(QString(\"0\"))", 0); + toUInt32.insert("QScriptValue(QString(\"123\"))", 123); + toUInt32.insert("QScriptValue(QString(\"12.4\"))", 12); + toUInt32.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0); + toUInt32.insert("QScriptValue(0, QScriptValue::NullValue)", 0); + toUInt32.insert("QScriptValue(0, true)", 1); + toUInt32.insert("QScriptValue(0, false)", 0); + toUInt32.insert("QScriptValue(0, int(122))", 122); + toUInt32.insert("QScriptValue(0, uint(124))", 124); + toUInt32.insert("QScriptValue(0, 0)", 0); + toUInt32.insert("QScriptValue(0, 0.0)", 0); + toUInt32.insert("QScriptValue(0, 123.0)", 123); + toUInt32.insert("QScriptValue(0, 6.37e-8)", 0); + toUInt32.insert("QScriptValue(0, -6.37e-8)", 0); + toUInt32.insert("QScriptValue(0, 0x43211234)", 1126240820); + toUInt32.insert("QScriptValue(0, 0x10000)", 65536); + toUInt32.insert("QScriptValue(0, 0x10001)", 65537); + toUInt32.insert("QScriptValue(0, qSNaN())", 0); + toUInt32.insert("QScriptValue(0, qQNaN())", 0); + toUInt32.insert("QScriptValue(0, qInf())", 0); + toUInt32.insert("QScriptValue(0, -qInf())", 0); + toUInt32.insert("QScriptValue(0, \"NaN\")", 0); + toUInt32.insert("QScriptValue(0, \"Infinity\")", 0); + toUInt32.insert("QScriptValue(0, \"-Infinity\")", 0); + toUInt32.insert("QScriptValue(0, \"ciao\")", 0); + toUInt32.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0); + toUInt32.insert("QScriptValue(0, QString(\"\"))", 0); + toUInt32.insert("QScriptValue(0, QString())", 0); + toUInt32.insert("QScriptValue(0, QString(\"0\"))", 0); + toUInt32.insert("QScriptValue(0, QString(\"123\"))", 123); + toUInt32.insert("QScriptValue(0, QString(\"12.3\"))", 12); + toUInt32.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0); + toUInt32.insert("QScriptValue(engine, QScriptValue::NullValue)", 0); + toUInt32.insert("QScriptValue(engine, true)", 1); + toUInt32.insert("QScriptValue(engine, false)", 0); + toUInt32.insert("QScriptValue(engine, int(122))", 122); + toUInt32.insert("QScriptValue(engine, uint(124))", 124); + toUInt32.insert("QScriptValue(engine, 0)", 0); + toUInt32.insert("QScriptValue(engine, 0.0)", 0); + toUInt32.insert("QScriptValue(engine, 123.0)", 123); + toUInt32.insert("QScriptValue(engine, 6.37e-8)", 0); + toUInt32.insert("QScriptValue(engine, -6.37e-8)", 0); + toUInt32.insert("QScriptValue(engine, 0x43211234)", 1126240820); + toUInt32.insert("QScriptValue(engine, 0x10000)", 65536); + toUInt32.insert("QScriptValue(engine, 0x10001)", 65537); + toUInt32.insert("QScriptValue(engine, qSNaN())", 0); + toUInt32.insert("QScriptValue(engine, qQNaN())", 0); + toUInt32.insert("QScriptValue(engine, qInf())", 0); + toUInt32.insert("QScriptValue(engine, -qInf())", 0); + toUInt32.insert("QScriptValue(engine, \"NaN\")", 0); + toUInt32.insert("QScriptValue(engine, \"Infinity\")", 0); + toUInt32.insert("QScriptValue(engine, \"-Infinity\")", 0); + toUInt32.insert("QScriptValue(engine, \"ciao\")", 0); + toUInt32.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0); + toUInt32.insert("QScriptValue(engine, QString(\"\"))", 0); + toUInt32.insert("QScriptValue(engine, QString())", 0); + toUInt32.insert("QScriptValue(engine, QString(\"0\"))", 0); + toUInt32.insert("QScriptValue(engine, QString(\"123\"))", 123); + toUInt32.insert("QScriptValue(engine, QString(\"1.23\"))", 1); + toUInt32.insert("engine->evaluate(\"[]\")", 0); + toUInt32.insert("engine->evaluate(\"{}\")", 0); + toUInt32.insert("engine->evaluate(\"Object.prototype\")", 0); + toUInt32.insert("engine->evaluate(\"Date.prototype\")", 0); + toUInt32.insert("engine->evaluate(\"Array.prototype\")", 0); + toUInt32.insert("engine->evaluate(\"Function.prototype\")", 0); + toUInt32.insert("engine->evaluate(\"Error.prototype\")", 0); + toUInt32.insert("engine->evaluate(\"Object\")", 0); + toUInt32.insert("engine->evaluate(\"Array\")", 0); + toUInt32.insert("engine->evaluate(\"Number\")", 0); + toUInt32.insert("engine->evaluate(\"Function\")", 0); + toUInt32.insert("engine->evaluate(\"(function() { return 1; })\")", 0); + toUInt32.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0); + toUInt32.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0); + toUInt32.insert("engine->evaluate(\"/foo/\")", 0); + toUInt32.insert("engine->evaluate(\"new Object()\")", 0); + toUInt32.insert("engine->evaluate(\"new Array()\")", 0); + toUInt32.insert("engine->evaluate(\"new Error()\")", 0); + } + newRow(expr) << toUInt32.value(expr); +} + +void tst_QScriptValue::toUInt32_test(const char*, const QScriptValue& value) +{ + QFETCH(quint32, expected); + QCOMPARE(value.toUInt32(), expected); +} + +DEFINE_TEST_FUNCTION(toUInt32) + + +void tst_QScriptValue::toUInt16_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::toUInt16_makeData(const char* expr) +{ + static QHash toUInt16; + if (toUInt16.isEmpty()) { + toUInt16.insert("QScriptValue()", 0); + toUInt16.insert("QScriptValue(QScriptValue::UndefinedValue)", 0); + toUInt16.insert("QScriptValue(QScriptValue::NullValue)", 0); + toUInt16.insert("QScriptValue(true)", 1); + toUInt16.insert("QScriptValue(false)", 0); + toUInt16.insert("QScriptValue(int(122))", 122); + toUInt16.insert("QScriptValue(uint(124))", 124); + toUInt16.insert("QScriptValue(0)", 0); + toUInt16.insert("QScriptValue(0.0)", 0); + toUInt16.insert("QScriptValue(123.0)", 123); + toUInt16.insert("QScriptValue(6.37e-8)", 0); + toUInt16.insert("QScriptValue(-6.37e-8)", 0); + toUInt16.insert("QScriptValue(0x43211234)", 4660); + toUInt16.insert("QScriptValue(0x10000)", 0); + toUInt16.insert("QScriptValue(0x10001)", 1); + toUInt16.insert("QScriptValue(qSNaN())", 0); + toUInt16.insert("QScriptValue(qQNaN())", 0); + toUInt16.insert("QScriptValue(qInf())", 0); + toUInt16.insert("QScriptValue(-qInf())", 0); + toUInt16.insert("QScriptValue(\"NaN\")", 0); + toUInt16.insert("QScriptValue(\"Infinity\")", 0); + toUInt16.insert("QScriptValue(\"-Infinity\")", 0); + toUInt16.insert("QScriptValue(\"ciao\")", 0); + toUInt16.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0); + toUInt16.insert("QScriptValue(QString(\"\"))", 0); + toUInt16.insert("QScriptValue(QString())", 0); + toUInt16.insert("QScriptValue(QString(\"0\"))", 0); + toUInt16.insert("QScriptValue(QString(\"123\"))", 123); + toUInt16.insert("QScriptValue(QString(\"12.4\"))", 12); + toUInt16.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0); + toUInt16.insert("QScriptValue(0, QScriptValue::NullValue)", 0); + toUInt16.insert("QScriptValue(0, true)", 1); + toUInt16.insert("QScriptValue(0, false)", 0); + toUInt16.insert("QScriptValue(0, int(122))", 122); + toUInt16.insert("QScriptValue(0, uint(124))", 124); + toUInt16.insert("QScriptValue(0, 0)", 0); + toUInt16.insert("QScriptValue(0, 0.0)", 0); + toUInt16.insert("QScriptValue(0, 123.0)", 123); + toUInt16.insert("QScriptValue(0, 6.37e-8)", 0); + toUInt16.insert("QScriptValue(0, -6.37e-8)", 0); + toUInt16.insert("QScriptValue(0, 0x43211234)", 4660); + toUInt16.insert("QScriptValue(0, 0x10000)", 0); + toUInt16.insert("QScriptValue(0, 0x10001)", 1); + toUInt16.insert("QScriptValue(0, qSNaN())", 0); + toUInt16.insert("QScriptValue(0, qQNaN())", 0); + toUInt16.insert("QScriptValue(0, qInf())", 0); + toUInt16.insert("QScriptValue(0, -qInf())", 0); + toUInt16.insert("QScriptValue(0, \"NaN\")", 0); + toUInt16.insert("QScriptValue(0, \"Infinity\")", 0); + toUInt16.insert("QScriptValue(0, \"-Infinity\")", 0); + toUInt16.insert("QScriptValue(0, \"ciao\")", 0); + toUInt16.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0); + toUInt16.insert("QScriptValue(0, QString(\"\"))", 0); + toUInt16.insert("QScriptValue(0, QString())", 0); + toUInt16.insert("QScriptValue(0, QString(\"0\"))", 0); + toUInt16.insert("QScriptValue(0, QString(\"123\"))", 123); + toUInt16.insert("QScriptValue(0, QString(\"12.3\"))", 12); + toUInt16.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0); + toUInt16.insert("QScriptValue(engine, QScriptValue::NullValue)", 0); + toUInt16.insert("QScriptValue(engine, true)", 1); + toUInt16.insert("QScriptValue(engine, false)", 0); + toUInt16.insert("QScriptValue(engine, int(122))", 122); + toUInt16.insert("QScriptValue(engine, uint(124))", 124); + toUInt16.insert("QScriptValue(engine, 0)", 0); + toUInt16.insert("QScriptValue(engine, 0.0)", 0); + toUInt16.insert("QScriptValue(engine, 123.0)", 123); + toUInt16.insert("QScriptValue(engine, 6.37e-8)", 0); + toUInt16.insert("QScriptValue(engine, -6.37e-8)", 0); + toUInt16.insert("QScriptValue(engine, 0x43211234)", 4660); + toUInt16.insert("QScriptValue(engine, 0x10000)", 0); + toUInt16.insert("QScriptValue(engine, 0x10001)", 1); + toUInt16.insert("QScriptValue(engine, qSNaN())", 0); + toUInt16.insert("QScriptValue(engine, qQNaN())", 0); + toUInt16.insert("QScriptValue(engine, qInf())", 0); + toUInt16.insert("QScriptValue(engine, -qInf())", 0); + toUInt16.insert("QScriptValue(engine, \"NaN\")", 0); + toUInt16.insert("QScriptValue(engine, \"Infinity\")", 0); + toUInt16.insert("QScriptValue(engine, \"-Infinity\")", 0); + toUInt16.insert("QScriptValue(engine, \"ciao\")", 0); + toUInt16.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0); + toUInt16.insert("QScriptValue(engine, QString(\"\"))", 0); + toUInt16.insert("QScriptValue(engine, QString())", 0); + toUInt16.insert("QScriptValue(engine, QString(\"0\"))", 0); + toUInt16.insert("QScriptValue(engine, QString(\"123\"))", 123); + toUInt16.insert("QScriptValue(engine, QString(\"1.23\"))", 1); + toUInt16.insert("engine->evaluate(\"[]\")", 0); + toUInt16.insert("engine->evaluate(\"{}\")", 0); + toUInt16.insert("engine->evaluate(\"Object.prototype\")", 0); + toUInt16.insert("engine->evaluate(\"Date.prototype\")", 0); + toUInt16.insert("engine->evaluate(\"Array.prototype\")", 0); + toUInt16.insert("engine->evaluate(\"Function.prototype\")", 0); + toUInt16.insert("engine->evaluate(\"Error.prototype\")", 0); + toUInt16.insert("engine->evaluate(\"Object\")", 0); + toUInt16.insert("engine->evaluate(\"Array\")", 0); + toUInt16.insert("engine->evaluate(\"Number\")", 0); + toUInt16.insert("engine->evaluate(\"Function\")", 0); + toUInt16.insert("engine->evaluate(\"(function() { return 1; })\")", 0); + toUInt16.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0); + toUInt16.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0); + toUInt16.insert("engine->evaluate(\"/foo/\")", 0); + toUInt16.insert("engine->evaluate(\"new Object()\")", 0); + toUInt16.insert("engine->evaluate(\"new Array()\")", 0); + toUInt16.insert("engine->evaluate(\"new Error()\")", 0); + } + newRow(expr) << toUInt16.value(expr); +} + +void tst_QScriptValue::toUInt16_test(const char*, const QScriptValue& value) +{ + QFETCH(quint16, expected); + QCOMPARE(value.toUInt16(), expected); +} + +DEFINE_TEST_FUNCTION(toUInt16) + + +void tst_QScriptValue::equals_initData() +{ + QTest::addColumn("other"); + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::equals_makeData(const char *expr) +{ + static QSet equals; + if (equals.isEmpty()) { + equals.insert("QScriptValue() <=> QScriptValue()"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> engine->evaluate(\"{}\")"); + equals.insert("QScriptValue(true) <=> QScriptValue(true)"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(false) <=> QScriptValue(false)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(false) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(false) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(false) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(false) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(false) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(0) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(0) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0.0) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(0.0) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(0.0) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(qInf()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(qInf()) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(qInf()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(qInf()) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(qInf()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(qInf()) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(-qInf())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, -qInf())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, -qInf())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(-qInf())"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, -qInf())"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, -qInf())"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(false)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(false)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(false)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> engine->evaluate(\"{}\")"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, false) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(0, false) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(0, false) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, 0) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(0, 0) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(0, 0) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, 0.0) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(0, 0.0) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(0, 0.0) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(-qInf())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, -qInf())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, -qInf())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(-qInf())"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, -qInf())"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, -qInf())"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> engine->evaluate(\"{}\")"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, false) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(engine, false) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(engine, false) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, 0) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(engine, 0) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(engine, 0) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(engine, 0.0) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(engine, 0.0) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(-qInf())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, -qInf())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, -qInf())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(-qInf())"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, -qInf())"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, -qInf())"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(false)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0.0)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString(\"\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString())"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, false)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0.0)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString(\"\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString())"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, false)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0.0)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString())"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"[]\")"); + equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("engine->evaluate(\"{}\") <=> engine->evaluate(\"{}\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("engine->evaluate(\"Date.prototype\") <=> engine->evaluate(\"Date.prototype\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(false)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0.0)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString(\"\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString())"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, false)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0.0)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString(\"\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString())"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, false)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0.0)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString())"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("engine->evaluate(\"Object\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"/foo/\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(false)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0.0)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString(\"\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString())"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, false)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0.0)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString(\"\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString())"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, false)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0.0)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString())"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"new Array()\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"new Error()\")"); + } + QHash::const_iterator it; + for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) { + QString tag = QString::fromLatin1("%20 <=> %21").arg(expr).arg(it.key()); + newRow(tag.toLatin1()) << it.value() << equals.contains(tag); + } +} + +void tst_QScriptValue::equals_test(const char *, const QScriptValue& value) +{ + QFETCH(QScriptValue, other); + QFETCH(bool, expected); + QCOMPARE(value.equals(other), expected); +} + +DEFINE_TEST_FUNCTION(equals) + + +void tst_QScriptValue::strictlyEquals_initData() +{ + QTest::addColumn("other"); + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::strictlyEquals_makeData(const char *expr) +{ + static QSet equals; + if (equals.isEmpty()) { + equals.insert("QScriptValue() <=> QScriptValue()"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(true) <=> QScriptValue(true)"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(false) <=> QScriptValue(false)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(qInf()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(qInf()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(qInf()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(-qInf())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, -qInf())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, -qInf())"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(-qInf())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, -qInf())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, -qInf())"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(-qInf())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, -qInf())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, -qInf())"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"[]\")"); + equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(QScriptValue::UndefinedValue)"); + equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(0, QScriptValue::UndefinedValue)"); + equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(engine, QScriptValue::UndefinedValue)"); + equals.insert("engine->evaluate(\"{}\") <=> engine->evaluate(\"{}\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("engine->evaluate(\"Date.prototype\") <=> engine->evaluate(\"Date.prototype\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("engine->evaluate(\"Object\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"/foo/\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"new Array()\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"new Error()\")"); + } + QHash::const_iterator it; + for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) { + QString tag = QString::fromLatin1("%20 <=> %21").arg(expr).arg(it.key()); + newRow(tag.toLatin1()) << it.value() << equals.contains(tag); + } +} + +void tst_QScriptValue::strictlyEquals_test(const char *, const QScriptValue& value) +{ + QFETCH(QScriptValue, other); + QFETCH(bool, expected); + QCOMPARE(value.strictlyEquals(other), expected); +} + +DEFINE_TEST_FUNCTION(strictlyEquals) + + +void tst_QScriptValue::lessThan_initData() +{ + QTest::addColumn("other"); + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::lessThan_makeData(const char *expr) +{ + static QSet equals; + if (equals.isEmpty()) { + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(true)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(true) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(true) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(true) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(true) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(true) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(true) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(true) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(true) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(true) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(true) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(true) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(true) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(true)"); + equals.insert("QScriptValue(false) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(false) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(false) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(false) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(false) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(false) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(false) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(true)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(true)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(false)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(-6.37e-8) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(-6.37e-8) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(-6.37e-8) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0x43211234) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(true)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(false)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(-qInf()) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(-qInf()) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(-qInf()) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(true)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(false)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"/foo/\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(true)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"/foo/\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(true)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"/foo/\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(true)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, -6.37e-8) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(0, -6.37e-8) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(0, -6.37e-8) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, -qInf()) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(0, -qInf()) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(0, -qInf()) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(false)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"/foo/\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"/foo/\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"/foo/\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(true)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(engine, -6.37e-8) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString(\"\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString(\"\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString(\"\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString())"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, -qInf()) <=> engine->evaluate(\"[]\")"); + equals.insert("QScriptValue(engine, -qInf()) <=> engine->evaluate(\"Array.prototype\")"); + equals.insert("QScriptValue(engine, -qInf()) <=> engine->evaluate(\"new Array()\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(false)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0.0)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(-6.37e-8)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, false)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0.0)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, -6.37e-8)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QScriptValue::NullValue)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, false)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0.0)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, -6.37e-8)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"/foo/\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"/foo/\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(\"-Infinity\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"/foo/\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(true)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(6.37e-8)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, true)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 6.37e-8)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, true)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(int(122))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(uint(124))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(123.0)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0x10000)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0x10001)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(qInf())"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(\"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(\"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(\"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, int(122))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, uint(124))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, 123.0)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, 0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, 0x10000)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, 0x10001)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, qInf())"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, \"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, \"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, int(122))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, uint(124))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, 123.0)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, 0x43211234)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, 0x10000)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, 0x10001)"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, qInf())"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, \"NaN\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, \"ciao\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Object\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Array\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Number\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Function\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"new Object()\")"); + equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"new Error()\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(true)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(int(122))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(uint(124))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(123.0)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(6.37e-8)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0x43211234)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0x10000)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0x10001)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(qInf())"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(\"NaN\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(\"Infinity\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(\"-Infinity\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(\"ciao\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString(\"0\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString(\"123\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, true)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, int(122))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, uint(124))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 123.0)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 6.37e-8)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0x43211234)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0x10000)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0x10001)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, qInf())"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, true)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, int(122))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, uint(124))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 123.0)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0x43211234)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0x10000)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0x10001)"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, qInf())"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"/foo/\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"new Error()\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(\"ciao\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(true)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(int(122))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(uint(124))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(123.0)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(6.37e-8)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0x43211234)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0x10000)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0x10001)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(qInf())"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(\"NaN\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(\"Infinity\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(\"-Infinity\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(\"ciao\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString(\"0\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString(\"123\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, true)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, int(122))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, uint(124))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 123.0)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 6.37e-8)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0x43211234)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0x10000)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0x10001)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, qInf())"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, true)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, int(122))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, uint(124))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 123.0)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0x43211234)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0x10000)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0x10001)"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, qInf())"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"/foo/\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"new Error()\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(\"NaN\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(\"Infinity\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(\"ciao\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(\"NaN\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(\"Infinity\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(\"ciao\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(QString(\"0\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(QString(\"123\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"new Error()\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(\"ciao\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(true)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(int(122))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(uint(124))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(123.0)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(6.37e-8)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0x43211234)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0x10000)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0x10001)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(qInf())"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(\"NaN\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(\"Infinity\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(\"-Infinity\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(\"ciao\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString(\"0\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString(\"123\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString(\"12.4\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, true)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, int(122))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, uint(124))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 123.0)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 6.37e-8)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0x43211234)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0x10000)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0x10001)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, qInf())"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, \"-Infinity\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString(\"0\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString(\"123\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString(\"12.3\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, true)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, int(122))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, uint(124))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 123.0)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 6.37e-8)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0x43211234)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0x10000)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0x10001)"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, qInf())"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, \"-Infinity\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString(\"0\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString(\"123\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString(\"1.23\"))"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Error.prototype\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"/foo/\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"new Object()\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"new Error()\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(\"NaN\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(\"Infinity\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(\"ciao\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(0, \"NaN\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(0, \"Infinity\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(0, \"ciao\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(engine, \"NaN\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(engine, \"Infinity\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(engine, \"ciao\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Object.prototype\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Function.prototype\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Number\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"(function() { return 1; })\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"new Object()\")"); + } + QHash::const_iterator it; + for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) { + QString tag = QString::fromLatin1("%20 <=> %21").arg(expr).arg(it.key()); + newRow(tag.toLatin1()) << it.value() << equals.contains(tag); + } +} + +void tst_QScriptValue::lessThan_test(const char *, const QScriptValue& value) +{ + QFETCH(QScriptValue, other); + QFETCH(bool, expected); + QCOMPARE(value.lessThan(other), expected); +} + +DEFINE_TEST_FUNCTION(lessThan) + + +void tst_QScriptValue::instanceOf_initData() +{ + QTest::addColumn("other"); + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::instanceOf_makeData(const char *expr) +{ + static QSet equals; + if (equals.isEmpty()) { + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"Date.prototype\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Object\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Object\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Function\")"); + equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Object\")"); + equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Array\")"); + equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Object\")"); + } + QHash::const_iterator it; + for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) { + QString tag = QString::fromLatin1("%20 <=> %21").arg(expr).arg(it.key()); + newRow(tag.toLatin1()) << it.value() << equals.contains(tag); + } +} + +void tst_QScriptValue::instanceOf_test(const char *, const QScriptValue& value) +{ + QFETCH(QScriptValue, other); + QFETCH(bool, expected); + QCOMPARE(value.instanceOf(other), expected); +} + +DEFINE_TEST_FUNCTION(instanceOf) + + +void tst_QScriptValue::qscriptvalue_castQString_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::qscriptvalue_castQString_makeData(const char* expr) +{ + static QHash value; + if (value.isEmpty()) { + value.insert("QScriptValue()", ""); + value.insert("QScriptValue(QScriptValue::UndefinedValue)", ""); + value.insert("QScriptValue(QScriptValue::NullValue)", ""); + value.insert("QScriptValue(true)", "true"); + value.insert("QScriptValue(false)", "false"); + value.insert("QScriptValue(int(122))", "122"); + value.insert("QScriptValue(uint(124))", "124"); + value.insert("QScriptValue(0)", "0"); + value.insert("QScriptValue(0.0)", "0"); + value.insert("QScriptValue(123.0)", "123"); + value.insert("QScriptValue(6.37e-8)", "6.37e-8"); + value.insert("QScriptValue(-6.37e-8)", "-6.37e-8"); + value.insert("QScriptValue(0x43211234)", "1126240820"); + value.insert("QScriptValue(0x10000)", "65536"); + value.insert("QScriptValue(0x10001)", "65537"); + value.insert("QScriptValue(qSNaN())", "NaN"); + value.insert("QScriptValue(qQNaN())", "NaN"); + value.insert("QScriptValue(qInf())", "Infinity"); + value.insert("QScriptValue(-qInf())", "-Infinity"); + value.insert("QScriptValue(\"NaN\")", "NaN"); + value.insert("QScriptValue(\"Infinity\")", "Infinity"); + value.insert("QScriptValue(\"-Infinity\")", "-Infinity"); + value.insert("QScriptValue(\"ciao\")", "ciao"); + value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", "ciao"); + value.insert("QScriptValue(QString(\"\"))", ""); + value.insert("QScriptValue(QString())", ""); + value.insert("QScriptValue(QString(\"0\"))", "0"); + value.insert("QScriptValue(QString(\"123\"))", "123"); + value.insert("QScriptValue(QString(\"12.4\"))", "12.4"); + value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", ""); + value.insert("QScriptValue(0, QScriptValue::NullValue)", ""); + value.insert("QScriptValue(0, true)", "true"); + value.insert("QScriptValue(0, false)", "false"); + value.insert("QScriptValue(0, int(122))", "122"); + value.insert("QScriptValue(0, uint(124))", "124"); + value.insert("QScriptValue(0, 0)", "0"); + value.insert("QScriptValue(0, 0.0)", "0"); + value.insert("QScriptValue(0, 123.0)", "123"); + value.insert("QScriptValue(0, 6.37e-8)", "6.37e-8"); + value.insert("QScriptValue(0, -6.37e-8)", "-6.37e-8"); + value.insert("QScriptValue(0, 0x43211234)", "1126240820"); + value.insert("QScriptValue(0, 0x10000)", "65536"); + value.insert("QScriptValue(0, 0x10001)", "65537"); + value.insert("QScriptValue(0, qSNaN())", "NaN"); + value.insert("QScriptValue(0, qQNaN())", "NaN"); + value.insert("QScriptValue(0, qInf())", "Infinity"); + value.insert("QScriptValue(0, -qInf())", "-Infinity"); + value.insert("QScriptValue(0, \"NaN\")", "NaN"); + value.insert("QScriptValue(0, \"Infinity\")", "Infinity"); + value.insert("QScriptValue(0, \"-Infinity\")", "-Infinity"); + value.insert("QScriptValue(0, \"ciao\")", "ciao"); + value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", "ciao"); + value.insert("QScriptValue(0, QString(\"\"))", ""); + value.insert("QScriptValue(0, QString())", ""); + value.insert("QScriptValue(0, QString(\"0\"))", "0"); + value.insert("QScriptValue(0, QString(\"123\"))", "123"); + value.insert("QScriptValue(0, QString(\"12.3\"))", "12.3"); + value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", ""); + value.insert("QScriptValue(engine, QScriptValue::NullValue)", ""); + value.insert("QScriptValue(engine, true)", "true"); + value.insert("QScriptValue(engine, false)", "false"); + value.insert("QScriptValue(engine, int(122))", "122"); + value.insert("QScriptValue(engine, uint(124))", "124"); + value.insert("QScriptValue(engine, 0)", "0"); + value.insert("QScriptValue(engine, 0.0)", "0"); + value.insert("QScriptValue(engine, 123.0)", "123"); + value.insert("QScriptValue(engine, 6.37e-8)", "6.37e-8"); + value.insert("QScriptValue(engine, -6.37e-8)", "-6.37e-8"); + value.insert("QScriptValue(engine, 0x43211234)", "1126240820"); + value.insert("QScriptValue(engine, 0x10000)", "65536"); + value.insert("QScriptValue(engine, 0x10001)", "65537"); + value.insert("QScriptValue(engine, qSNaN())", "NaN"); + value.insert("QScriptValue(engine, qQNaN())", "NaN"); + value.insert("QScriptValue(engine, qInf())", "Infinity"); + value.insert("QScriptValue(engine, -qInf())", "-Infinity"); + value.insert("QScriptValue(engine, \"NaN\")", "NaN"); + value.insert("QScriptValue(engine, \"Infinity\")", "Infinity"); + value.insert("QScriptValue(engine, \"-Infinity\")", "-Infinity"); + value.insert("QScriptValue(engine, \"ciao\")", "ciao"); + value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", "ciao"); + value.insert("QScriptValue(engine, QString(\"\"))", ""); + value.insert("QScriptValue(engine, QString())", ""); + value.insert("QScriptValue(engine, QString(\"0\"))", "0"); + value.insert("QScriptValue(engine, QString(\"123\"))", "123"); + value.insert("QScriptValue(engine, QString(\"1.23\"))", "1.23"); + value.insert("engine->evaluate(\"[]\")", ""); + value.insert("engine->evaluate(\"{}\")", ""); + value.insert("engine->evaluate(\"Object.prototype\")", "[object Object]"); + value.insert("engine->evaluate(\"Date.prototype\")", "Invalid Date"); + value.insert("engine->evaluate(\"Array.prototype\")", ""); + value.insert("engine->evaluate(\"Function.prototype\")", "function () {\n [native code]\n}"); + value.insert("engine->evaluate(\"Error.prototype\")", "Error: Unknown error"); + value.insert("engine->evaluate(\"Object\")", "function Object() {\n [native code]\n}"); + value.insert("engine->evaluate(\"Array\")", "function Array() {\n [native code]\n}"); + value.insert("engine->evaluate(\"Number\")", "function Number() {\n [native code]\n}"); + value.insert("engine->evaluate(\"Function\")", "function Function() {\n [native code]\n}"); + value.insert("engine->evaluate(\"(function() { return 1; })\")", "function () { return 1; }"); + value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", "function () { return 'ciao'; }"); + value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", "function () { throw new Error('foo'); }"); + value.insert("engine->evaluate(\"/foo/\")", "/foo/"); + value.insert("engine->evaluate(\"new Object()\")", "[object Object]"); + value.insert("engine->evaluate(\"new Array()\")", ""); + value.insert("engine->evaluate(\"new Error()\")", "Error: Unknown error"); + } + newRow(expr) << value.value(expr); +} + +void tst_QScriptValue::qscriptvalue_castQString_test(const char*, const QScriptValue& value) +{ + QFETCH(QString, expected); + QCOMPARE(qscriptvalue_cast(value), expected); +} + +DEFINE_TEST_FUNCTION(qscriptvalue_castQString) + + +void tst_QScriptValue::qscriptvalue_castqsreal_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::qscriptvalue_castqsreal_makeData(const char* expr) +{ + static QHash value; + if (value.isEmpty()) { + value.insert("QScriptValue()", 0); + value.insert("QScriptValue(QScriptValue::UndefinedValue)", qQNaN()); + value.insert("QScriptValue(QScriptValue::NullValue)", 0); + value.insert("QScriptValue(true)", 1); + value.insert("QScriptValue(false)", 0); + value.insert("QScriptValue(int(122))", 122); + value.insert("QScriptValue(uint(124))", 124); + value.insert("QScriptValue(0)", 0); + value.insert("QScriptValue(0.0)", 0); + value.insert("QScriptValue(123.0)", 123); + value.insert("QScriptValue(6.37e-8)", 6.369999999999999e-08); + value.insert("QScriptValue(-6.37e-8)", -6.369999999999999e-08); + value.insert("QScriptValue(0x43211234)", 1126240820); + value.insert("QScriptValue(0x10000)", 65536); + value.insert("QScriptValue(0x10001)", 65537); + value.insert("QScriptValue(qSNaN())", qQNaN()); + value.insert("QScriptValue(qQNaN())", qQNaN()); + value.insert("QScriptValue(qInf())", qInf()); + value.insert("QScriptValue(-qInf())", qInf()); + value.insert("QScriptValue(\"NaN\")", qQNaN()); + value.insert("QScriptValue(\"Infinity\")", qInf()); + value.insert("QScriptValue(\"-Infinity\")", qInf()); + value.insert("QScriptValue(\"ciao\")", qQNaN()); + value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", qQNaN()); + value.insert("QScriptValue(QString(\"\"))", 0); + value.insert("QScriptValue(QString())", 0); + value.insert("QScriptValue(QString(\"0\"))", 0); + value.insert("QScriptValue(QString(\"123\"))", 123); + value.insert("QScriptValue(QString(\"12.4\"))", 12.4); + value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", qQNaN()); + value.insert("QScriptValue(0, QScriptValue::NullValue)", 0); + value.insert("QScriptValue(0, true)", 1); + value.insert("QScriptValue(0, false)", 0); + value.insert("QScriptValue(0, int(122))", 122); + value.insert("QScriptValue(0, uint(124))", 124); + value.insert("QScriptValue(0, 0)", 0); + value.insert("QScriptValue(0, 0.0)", 0); + value.insert("QScriptValue(0, 123.0)", 123); + value.insert("QScriptValue(0, 6.37e-8)", 6.369999999999999e-08); + value.insert("QScriptValue(0, -6.37e-8)", -6.369999999999999e-08); + value.insert("QScriptValue(0, 0x43211234)", 1126240820); + value.insert("QScriptValue(0, 0x10000)", 65536); + value.insert("QScriptValue(0, 0x10001)", 65537); + value.insert("QScriptValue(0, qSNaN())", qQNaN()); + value.insert("QScriptValue(0, qQNaN())", qQNaN()); + value.insert("QScriptValue(0, qInf())", qInf()); + value.insert("QScriptValue(0, -qInf())", qInf()); + value.insert("QScriptValue(0, \"NaN\")", qQNaN()); + value.insert("QScriptValue(0, \"Infinity\")", qInf()); + value.insert("QScriptValue(0, \"-Infinity\")", qInf()); + value.insert("QScriptValue(0, \"ciao\")", qQNaN()); + value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", qQNaN()); + value.insert("QScriptValue(0, QString(\"\"))", 0); + value.insert("QScriptValue(0, QString())", 0); + value.insert("QScriptValue(0, QString(\"0\"))", 0); + value.insert("QScriptValue(0, QString(\"123\"))", 123); + value.insert("QScriptValue(0, QString(\"12.3\"))", 12.3); + value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", qQNaN()); + value.insert("QScriptValue(engine, QScriptValue::NullValue)", 0); + value.insert("QScriptValue(engine, true)", 1); + value.insert("QScriptValue(engine, false)", 0); + value.insert("QScriptValue(engine, int(122))", 122); + value.insert("QScriptValue(engine, uint(124))", 124); + value.insert("QScriptValue(engine, 0)", 0); + value.insert("QScriptValue(engine, 0.0)", 0); + value.insert("QScriptValue(engine, 123.0)", 123); + value.insert("QScriptValue(engine, 6.37e-8)", 6.369999999999999e-08); + value.insert("QScriptValue(engine, -6.37e-8)", -6.369999999999999e-08); + value.insert("QScriptValue(engine, 0x43211234)", 1126240820); + value.insert("QScriptValue(engine, 0x10000)", 65536); + value.insert("QScriptValue(engine, 0x10001)", 65537); + value.insert("QScriptValue(engine, qSNaN())", qQNaN()); + value.insert("QScriptValue(engine, qQNaN())", qQNaN()); + value.insert("QScriptValue(engine, qInf())", qInf()); + value.insert("QScriptValue(engine, -qInf())", qInf()); + value.insert("QScriptValue(engine, \"NaN\")", qQNaN()); + value.insert("QScriptValue(engine, \"Infinity\")", qInf()); + value.insert("QScriptValue(engine, \"-Infinity\")", qInf()); + value.insert("QScriptValue(engine, \"ciao\")", qQNaN()); + value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", qQNaN()); + value.insert("QScriptValue(engine, QString(\"\"))", 0); + value.insert("QScriptValue(engine, QString())", 0); + value.insert("QScriptValue(engine, QString(\"0\"))", 0); + value.insert("QScriptValue(engine, QString(\"123\"))", 123); + value.insert("QScriptValue(engine, QString(\"1.23\"))", 1.23); + value.insert("engine->evaluate(\"[]\")", 0); + value.insert("engine->evaluate(\"{}\")", qQNaN()); + value.insert("engine->evaluate(\"Object.prototype\")", qQNaN()); + value.insert("engine->evaluate(\"Date.prototype\")", qQNaN()); + value.insert("engine->evaluate(\"Array.prototype\")", 0); + value.insert("engine->evaluate(\"Function.prototype\")", qQNaN()); + value.insert("engine->evaluate(\"Error.prototype\")", qQNaN()); + value.insert("engine->evaluate(\"Object\")", qQNaN()); + value.insert("engine->evaluate(\"Array\")", qQNaN()); + value.insert("engine->evaluate(\"Number\")", qQNaN()); + value.insert("engine->evaluate(\"Function\")", qQNaN()); + value.insert("engine->evaluate(\"(function() { return 1; })\")", qQNaN()); + value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", qQNaN()); + value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", qQNaN()); + value.insert("engine->evaluate(\"/foo/\")", qQNaN()); + value.insert("engine->evaluate(\"new Object()\")", qQNaN()); + value.insert("engine->evaluate(\"new Array()\")", 0); + value.insert("engine->evaluate(\"new Error()\")", qQNaN()); + } + newRow(expr) << value.value(expr); +} + +void tst_QScriptValue::qscriptvalue_castqsreal_test(const char*, const QScriptValue& value) +{ + QFETCH(qsreal, expected); + if (qIsNaN(expected)) { + QVERIFY(qIsNaN(qscriptvalue_cast(value))); + return; + } + if (qIsInf(expected)) { + QVERIFY(qIsInf(qscriptvalue_cast(value))); + return; + } + QCOMPARE(qscriptvalue_cast(value), expected); +} + +DEFINE_TEST_FUNCTION(qscriptvalue_castqsreal) + + +void tst_QScriptValue::qscriptvalue_castbool_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::qscriptvalue_castbool_makeData(const char* expr) +{ + static QHash value; + if (value.isEmpty()) { + value.insert("QScriptValue()", false); + value.insert("QScriptValue(QScriptValue::UndefinedValue)", false); + value.insert("QScriptValue(QScriptValue::NullValue)", false); + value.insert("QScriptValue(true)", true); + value.insert("QScriptValue(false)", false); + value.insert("QScriptValue(int(122))", true); + value.insert("QScriptValue(uint(124))", true); + value.insert("QScriptValue(0)", false); + value.insert("QScriptValue(0.0)", false); + value.insert("QScriptValue(123.0)", true); + value.insert("QScriptValue(6.37e-8)", true); + value.insert("QScriptValue(-6.37e-8)", true); + value.insert("QScriptValue(0x43211234)", true); + value.insert("QScriptValue(0x10000)", true); + value.insert("QScriptValue(0x10001)", true); + value.insert("QScriptValue(qSNaN())", false); + value.insert("QScriptValue(qQNaN())", false); + value.insert("QScriptValue(qInf())", true); + value.insert("QScriptValue(-qInf())", true); + value.insert("QScriptValue(\"NaN\")", true); + value.insert("QScriptValue(\"Infinity\")", true); + value.insert("QScriptValue(\"-Infinity\")", true); + value.insert("QScriptValue(\"ciao\")", true); + value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", true); + value.insert("QScriptValue(QString(\"\"))", false); + value.insert("QScriptValue(QString())", false); + value.insert("QScriptValue(QString(\"0\"))", true); + value.insert("QScriptValue(QString(\"123\"))", true); + value.insert("QScriptValue(QString(\"12.4\"))", true); + value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", false); + value.insert("QScriptValue(0, QScriptValue::NullValue)", false); + value.insert("QScriptValue(0, true)", true); + value.insert("QScriptValue(0, false)", false); + value.insert("QScriptValue(0, int(122))", true); + value.insert("QScriptValue(0, uint(124))", true); + value.insert("QScriptValue(0, 0)", false); + value.insert("QScriptValue(0, 0.0)", false); + value.insert("QScriptValue(0, 123.0)", true); + value.insert("QScriptValue(0, 6.37e-8)", true); + value.insert("QScriptValue(0, -6.37e-8)", true); + value.insert("QScriptValue(0, 0x43211234)", true); + value.insert("QScriptValue(0, 0x10000)", true); + value.insert("QScriptValue(0, 0x10001)", true); + value.insert("QScriptValue(0, qSNaN())", false); + value.insert("QScriptValue(0, qQNaN())", false); + value.insert("QScriptValue(0, qInf())", true); + value.insert("QScriptValue(0, -qInf())", true); + value.insert("QScriptValue(0, \"NaN\")", true); + value.insert("QScriptValue(0, \"Infinity\")", true); + value.insert("QScriptValue(0, \"-Infinity\")", true); + value.insert("QScriptValue(0, \"ciao\")", true); + value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", true); + value.insert("QScriptValue(0, QString(\"\"))", false); + value.insert("QScriptValue(0, QString())", false); + value.insert("QScriptValue(0, QString(\"0\"))", true); + value.insert("QScriptValue(0, QString(\"123\"))", true); + value.insert("QScriptValue(0, QString(\"12.3\"))", true); + value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", false); + value.insert("QScriptValue(engine, QScriptValue::NullValue)", false); + value.insert("QScriptValue(engine, true)", true); + value.insert("QScriptValue(engine, false)", false); + value.insert("QScriptValue(engine, int(122))", true); + value.insert("QScriptValue(engine, uint(124))", true); + value.insert("QScriptValue(engine, 0)", false); + value.insert("QScriptValue(engine, 0.0)", false); + value.insert("QScriptValue(engine, 123.0)", true); + value.insert("QScriptValue(engine, 6.37e-8)", true); + value.insert("QScriptValue(engine, -6.37e-8)", true); + value.insert("QScriptValue(engine, 0x43211234)", true); + value.insert("QScriptValue(engine, 0x10000)", true); + value.insert("QScriptValue(engine, 0x10001)", true); + value.insert("QScriptValue(engine, qSNaN())", false); + value.insert("QScriptValue(engine, qQNaN())", false); + value.insert("QScriptValue(engine, qInf())", true); + value.insert("QScriptValue(engine, -qInf())", true); + value.insert("QScriptValue(engine, \"NaN\")", true); + value.insert("QScriptValue(engine, \"Infinity\")", true); + value.insert("QScriptValue(engine, \"-Infinity\")", true); + value.insert("QScriptValue(engine, \"ciao\")", true); + value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", true); + value.insert("QScriptValue(engine, QString(\"\"))", false); + value.insert("QScriptValue(engine, QString())", false); + value.insert("QScriptValue(engine, QString(\"0\"))", true); + value.insert("QScriptValue(engine, QString(\"123\"))", true); + value.insert("QScriptValue(engine, QString(\"1.23\"))", true); + value.insert("engine->evaluate(\"[]\")", true); + value.insert("engine->evaluate(\"{}\")", false); + value.insert("engine->evaluate(\"Object.prototype\")", true); + value.insert("engine->evaluate(\"Date.prototype\")", true); + value.insert("engine->evaluate(\"Array.prototype\")", true); + value.insert("engine->evaluate(\"Function.prototype\")", true); + value.insert("engine->evaluate(\"Error.prototype\")", true); + value.insert("engine->evaluate(\"Object\")", true); + value.insert("engine->evaluate(\"Array\")", true); + value.insert("engine->evaluate(\"Number\")", true); + value.insert("engine->evaluate(\"Function\")", true); + value.insert("engine->evaluate(\"(function() { return 1; })\")", true); + value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", true); + value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", true); + value.insert("engine->evaluate(\"/foo/\")", true); + value.insert("engine->evaluate(\"new Object()\")", true); + value.insert("engine->evaluate(\"new Array()\")", true); + value.insert("engine->evaluate(\"new Error()\")", true); + } + newRow(expr) << value.value(expr); +} + +void tst_QScriptValue::qscriptvalue_castbool_test(const char*, const QScriptValue& value) +{ + QFETCH(bool, expected); + QCOMPARE(qscriptvalue_cast(value), expected); +} + +DEFINE_TEST_FUNCTION(qscriptvalue_castbool) + + +void tst_QScriptValue::qscriptvalue_castqint32_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::qscriptvalue_castqint32_makeData(const char* expr) +{ + static QHash value; + if (value.isEmpty()) { + value.insert("QScriptValue()", 0); + value.insert("QScriptValue(QScriptValue::UndefinedValue)", 0); + value.insert("QScriptValue(QScriptValue::NullValue)", 0); + value.insert("QScriptValue(true)", 1); + value.insert("QScriptValue(false)", 0); + value.insert("QScriptValue(int(122))", 122); + value.insert("QScriptValue(uint(124))", 124); + value.insert("QScriptValue(0)", 0); + value.insert("QScriptValue(0.0)", 0); + value.insert("QScriptValue(123.0)", 123); + value.insert("QScriptValue(6.37e-8)", 0); + value.insert("QScriptValue(-6.37e-8)", 0); + value.insert("QScriptValue(0x43211234)", 1126240820); + value.insert("QScriptValue(0x10000)", 65536); + value.insert("QScriptValue(0x10001)", 65537); + value.insert("QScriptValue(qSNaN())", 0); + value.insert("QScriptValue(qQNaN())", 0); + value.insert("QScriptValue(qInf())", 0); + value.insert("QScriptValue(-qInf())", 0); + value.insert("QScriptValue(\"NaN\")", 0); + value.insert("QScriptValue(\"Infinity\")", 0); + value.insert("QScriptValue(\"-Infinity\")", 0); + value.insert("QScriptValue(\"ciao\")", 0); + value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0); + value.insert("QScriptValue(QString(\"\"))", 0); + value.insert("QScriptValue(QString())", 0); + value.insert("QScriptValue(QString(\"0\"))", 0); + value.insert("QScriptValue(QString(\"123\"))", 123); + value.insert("QScriptValue(QString(\"12.4\"))", 12); + value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0); + value.insert("QScriptValue(0, QScriptValue::NullValue)", 0); + value.insert("QScriptValue(0, true)", 1); + value.insert("QScriptValue(0, false)", 0); + value.insert("QScriptValue(0, int(122))", 122); + value.insert("QScriptValue(0, uint(124))", 124); + value.insert("QScriptValue(0, 0)", 0); + value.insert("QScriptValue(0, 0.0)", 0); + value.insert("QScriptValue(0, 123.0)", 123); + value.insert("QScriptValue(0, 6.37e-8)", 0); + value.insert("QScriptValue(0, -6.37e-8)", 0); + value.insert("QScriptValue(0, 0x43211234)", 1126240820); + value.insert("QScriptValue(0, 0x10000)", 65536); + value.insert("QScriptValue(0, 0x10001)", 65537); + value.insert("QScriptValue(0, qSNaN())", 0); + value.insert("QScriptValue(0, qQNaN())", 0); + value.insert("QScriptValue(0, qInf())", 0); + value.insert("QScriptValue(0, -qInf())", 0); + value.insert("QScriptValue(0, \"NaN\")", 0); + value.insert("QScriptValue(0, \"Infinity\")", 0); + value.insert("QScriptValue(0, \"-Infinity\")", 0); + value.insert("QScriptValue(0, \"ciao\")", 0); + value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0); + value.insert("QScriptValue(0, QString(\"\"))", 0); + value.insert("QScriptValue(0, QString())", 0); + value.insert("QScriptValue(0, QString(\"0\"))", 0); + value.insert("QScriptValue(0, QString(\"123\"))", 123); + value.insert("QScriptValue(0, QString(\"12.3\"))", 12); + value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0); + value.insert("QScriptValue(engine, QScriptValue::NullValue)", 0); + value.insert("QScriptValue(engine, true)", 1); + value.insert("QScriptValue(engine, false)", 0); + value.insert("QScriptValue(engine, int(122))", 122); + value.insert("QScriptValue(engine, uint(124))", 124); + value.insert("QScriptValue(engine, 0)", 0); + value.insert("QScriptValue(engine, 0.0)", 0); + value.insert("QScriptValue(engine, 123.0)", 123); + value.insert("QScriptValue(engine, 6.37e-8)", 0); + value.insert("QScriptValue(engine, -6.37e-8)", 0); + value.insert("QScriptValue(engine, 0x43211234)", 1126240820); + value.insert("QScriptValue(engine, 0x10000)", 65536); + value.insert("QScriptValue(engine, 0x10001)", 65537); + value.insert("QScriptValue(engine, qSNaN())", 0); + value.insert("QScriptValue(engine, qQNaN())", 0); + value.insert("QScriptValue(engine, qInf())", 0); + value.insert("QScriptValue(engine, -qInf())", 0); + value.insert("QScriptValue(engine, \"NaN\")", 0); + value.insert("QScriptValue(engine, \"Infinity\")", 0); + value.insert("QScriptValue(engine, \"-Infinity\")", 0); + value.insert("QScriptValue(engine, \"ciao\")", 0); + value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0); + value.insert("QScriptValue(engine, QString(\"\"))", 0); + value.insert("QScriptValue(engine, QString())", 0); + value.insert("QScriptValue(engine, QString(\"0\"))", 0); + value.insert("QScriptValue(engine, QString(\"123\"))", 123); + value.insert("QScriptValue(engine, QString(\"1.23\"))", 1); + value.insert("engine->evaluate(\"[]\")", 0); + value.insert("engine->evaluate(\"{}\")", 0); + value.insert("engine->evaluate(\"Object.prototype\")", 0); + value.insert("engine->evaluate(\"Date.prototype\")", 0); + value.insert("engine->evaluate(\"Array.prototype\")", 0); + value.insert("engine->evaluate(\"Function.prototype\")", 0); + value.insert("engine->evaluate(\"Error.prototype\")", 0); + value.insert("engine->evaluate(\"Object\")", 0); + value.insert("engine->evaluate(\"Array\")", 0); + value.insert("engine->evaluate(\"Number\")", 0); + value.insert("engine->evaluate(\"Function\")", 0); + value.insert("engine->evaluate(\"(function() { return 1; })\")", 0); + value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0); + value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0); + value.insert("engine->evaluate(\"/foo/\")", 0); + value.insert("engine->evaluate(\"new Object()\")", 0); + value.insert("engine->evaluate(\"new Array()\")", 0); + value.insert("engine->evaluate(\"new Error()\")", 0); + } + newRow(expr) << value.value(expr); +} + +void tst_QScriptValue::qscriptvalue_castqint32_test(const char*, const QScriptValue& value) +{ + QFETCH(qint32, expected); + QCOMPARE(qscriptvalue_cast(value), expected); +} + +DEFINE_TEST_FUNCTION(qscriptvalue_castqint32) + + +void tst_QScriptValue::qscriptvalue_castquint32_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::qscriptvalue_castquint32_makeData(const char* expr) +{ + static QHash value; + if (value.isEmpty()) { + value.insert("QScriptValue()", 0); + value.insert("QScriptValue(QScriptValue::UndefinedValue)", 0); + value.insert("QScriptValue(QScriptValue::NullValue)", 0); + value.insert("QScriptValue(true)", 1); + value.insert("QScriptValue(false)", 0); + value.insert("QScriptValue(int(122))", 122); + value.insert("QScriptValue(uint(124))", 124); + value.insert("QScriptValue(0)", 0); + value.insert("QScriptValue(0.0)", 0); + value.insert("QScriptValue(123.0)", 123); + value.insert("QScriptValue(6.37e-8)", 0); + value.insert("QScriptValue(-6.37e-8)", 0); + value.insert("QScriptValue(0x43211234)", 1126240820); + value.insert("QScriptValue(0x10000)", 65536); + value.insert("QScriptValue(0x10001)", 65537); + value.insert("QScriptValue(qSNaN())", 0); + value.insert("QScriptValue(qQNaN())", 0); + value.insert("QScriptValue(qInf())", 0); + value.insert("QScriptValue(-qInf())", 0); + value.insert("QScriptValue(\"NaN\")", 0); + value.insert("QScriptValue(\"Infinity\")", 0); + value.insert("QScriptValue(\"-Infinity\")", 0); + value.insert("QScriptValue(\"ciao\")", 0); + value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0); + value.insert("QScriptValue(QString(\"\"))", 0); + value.insert("QScriptValue(QString())", 0); + value.insert("QScriptValue(QString(\"0\"))", 0); + value.insert("QScriptValue(QString(\"123\"))", 123); + value.insert("QScriptValue(QString(\"12.4\"))", 12); + value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0); + value.insert("QScriptValue(0, QScriptValue::NullValue)", 0); + value.insert("QScriptValue(0, true)", 1); + value.insert("QScriptValue(0, false)", 0); + value.insert("QScriptValue(0, int(122))", 122); + value.insert("QScriptValue(0, uint(124))", 124); + value.insert("QScriptValue(0, 0)", 0); + value.insert("QScriptValue(0, 0.0)", 0); + value.insert("QScriptValue(0, 123.0)", 123); + value.insert("QScriptValue(0, 6.37e-8)", 0); + value.insert("QScriptValue(0, -6.37e-8)", 0); + value.insert("QScriptValue(0, 0x43211234)", 1126240820); + value.insert("QScriptValue(0, 0x10000)", 65536); + value.insert("QScriptValue(0, 0x10001)", 65537); + value.insert("QScriptValue(0, qSNaN())", 0); + value.insert("QScriptValue(0, qQNaN())", 0); + value.insert("QScriptValue(0, qInf())", 0); + value.insert("QScriptValue(0, -qInf())", 0); + value.insert("QScriptValue(0, \"NaN\")", 0); + value.insert("QScriptValue(0, \"Infinity\")", 0); + value.insert("QScriptValue(0, \"-Infinity\")", 0); + value.insert("QScriptValue(0, \"ciao\")", 0); + value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0); + value.insert("QScriptValue(0, QString(\"\"))", 0); + value.insert("QScriptValue(0, QString())", 0); + value.insert("QScriptValue(0, QString(\"0\"))", 0); + value.insert("QScriptValue(0, QString(\"123\"))", 123); + value.insert("QScriptValue(0, QString(\"12.3\"))", 12); + value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0); + value.insert("QScriptValue(engine, QScriptValue::NullValue)", 0); + value.insert("QScriptValue(engine, true)", 1); + value.insert("QScriptValue(engine, false)", 0); + value.insert("QScriptValue(engine, int(122))", 122); + value.insert("QScriptValue(engine, uint(124))", 124); + value.insert("QScriptValue(engine, 0)", 0); + value.insert("QScriptValue(engine, 0.0)", 0); + value.insert("QScriptValue(engine, 123.0)", 123); + value.insert("QScriptValue(engine, 6.37e-8)", 0); + value.insert("QScriptValue(engine, -6.37e-8)", 0); + value.insert("QScriptValue(engine, 0x43211234)", 1126240820); + value.insert("QScriptValue(engine, 0x10000)", 65536); + value.insert("QScriptValue(engine, 0x10001)", 65537); + value.insert("QScriptValue(engine, qSNaN())", 0); + value.insert("QScriptValue(engine, qQNaN())", 0); + value.insert("QScriptValue(engine, qInf())", 0); + value.insert("QScriptValue(engine, -qInf())", 0); + value.insert("QScriptValue(engine, \"NaN\")", 0); + value.insert("QScriptValue(engine, \"Infinity\")", 0); + value.insert("QScriptValue(engine, \"-Infinity\")", 0); + value.insert("QScriptValue(engine, \"ciao\")", 0); + value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0); + value.insert("QScriptValue(engine, QString(\"\"))", 0); + value.insert("QScriptValue(engine, QString())", 0); + value.insert("QScriptValue(engine, QString(\"0\"))", 0); + value.insert("QScriptValue(engine, QString(\"123\"))", 123); + value.insert("QScriptValue(engine, QString(\"1.23\"))", 1); + value.insert("engine->evaluate(\"[]\")", 0); + value.insert("engine->evaluate(\"{}\")", 0); + value.insert("engine->evaluate(\"Object.prototype\")", 0); + value.insert("engine->evaluate(\"Date.prototype\")", 0); + value.insert("engine->evaluate(\"Array.prototype\")", 0); + value.insert("engine->evaluate(\"Function.prototype\")", 0); + value.insert("engine->evaluate(\"Error.prototype\")", 0); + value.insert("engine->evaluate(\"Object\")", 0); + value.insert("engine->evaluate(\"Array\")", 0); + value.insert("engine->evaluate(\"Number\")", 0); + value.insert("engine->evaluate(\"Function\")", 0); + value.insert("engine->evaluate(\"(function() { return 1; })\")", 0); + value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0); + value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0); + value.insert("engine->evaluate(\"/foo/\")", 0); + value.insert("engine->evaluate(\"new Object()\")", 0); + value.insert("engine->evaluate(\"new Array()\")", 0); + value.insert("engine->evaluate(\"new Error()\")", 0); + } + newRow(expr) << value.value(expr); +} + +void tst_QScriptValue::qscriptvalue_castquint32_test(const char*, const QScriptValue& value) +{ + QFETCH(quint32, expected); + QCOMPARE(qscriptvalue_cast(value), expected); +} + +DEFINE_TEST_FUNCTION(qscriptvalue_castquint32) + + +void tst_QScriptValue::qscriptvalue_castquint16_initData() +{ + QTest::addColumn("expected"); + initScriptValues(); +} + +void tst_QScriptValue::qscriptvalue_castquint16_makeData(const char* expr) +{ + static QHash value; + if (value.isEmpty()) { + value.insert("QScriptValue()", 0); + value.insert("QScriptValue(QScriptValue::UndefinedValue)", 0); + value.insert("QScriptValue(QScriptValue::NullValue)", 0); + value.insert("QScriptValue(true)", 1); + value.insert("QScriptValue(false)", 0); + value.insert("QScriptValue(int(122))", 122); + value.insert("QScriptValue(uint(124))", 124); + value.insert("QScriptValue(0)", 0); + value.insert("QScriptValue(0.0)", 0); + value.insert("QScriptValue(123.0)", 123); + value.insert("QScriptValue(6.37e-8)", 0); + value.insert("QScriptValue(-6.37e-8)", 0); + value.insert("QScriptValue(0x43211234)", 4660); + value.insert("QScriptValue(0x10000)", 0); + value.insert("QScriptValue(0x10001)", 1); + value.insert("QScriptValue(qSNaN())", 0); + value.insert("QScriptValue(qQNaN())", 0); + value.insert("QScriptValue(qInf())", 0); + value.insert("QScriptValue(-qInf())", 0); + value.insert("QScriptValue(\"NaN\")", 0); + value.insert("QScriptValue(\"Infinity\")", 0); + value.insert("QScriptValue(\"-Infinity\")", 0); + value.insert("QScriptValue(\"ciao\")", 0); + value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0); + value.insert("QScriptValue(QString(\"\"))", 0); + value.insert("QScriptValue(QString())", 0); + value.insert("QScriptValue(QString(\"0\"))", 0); + value.insert("QScriptValue(QString(\"123\"))", 123); + value.insert("QScriptValue(QString(\"12.4\"))", 12); + value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0); + value.insert("QScriptValue(0, QScriptValue::NullValue)", 0); + value.insert("QScriptValue(0, true)", 1); + value.insert("QScriptValue(0, false)", 0); + value.insert("QScriptValue(0, int(122))", 122); + value.insert("QScriptValue(0, uint(124))", 124); + value.insert("QScriptValue(0, 0)", 0); + value.insert("QScriptValue(0, 0.0)", 0); + value.insert("QScriptValue(0, 123.0)", 123); + value.insert("QScriptValue(0, 6.37e-8)", 0); + value.insert("QScriptValue(0, -6.37e-8)", 0); + value.insert("QScriptValue(0, 0x43211234)", 4660); + value.insert("QScriptValue(0, 0x10000)", 0); + value.insert("QScriptValue(0, 0x10001)", 1); + value.insert("QScriptValue(0, qSNaN())", 0); + value.insert("QScriptValue(0, qQNaN())", 0); + value.insert("QScriptValue(0, qInf())", 0); + value.insert("QScriptValue(0, -qInf())", 0); + value.insert("QScriptValue(0, \"NaN\")", 0); + value.insert("QScriptValue(0, \"Infinity\")", 0); + value.insert("QScriptValue(0, \"-Infinity\")", 0); + value.insert("QScriptValue(0, \"ciao\")", 0); + value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0); + value.insert("QScriptValue(0, QString(\"\"))", 0); + value.insert("QScriptValue(0, QString())", 0); + value.insert("QScriptValue(0, QString(\"0\"))", 0); + value.insert("QScriptValue(0, QString(\"123\"))", 123); + value.insert("QScriptValue(0, QString(\"12.3\"))", 12); + value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0); + value.insert("QScriptValue(engine, QScriptValue::NullValue)", 0); + value.insert("QScriptValue(engine, true)", 1); + value.insert("QScriptValue(engine, false)", 0); + value.insert("QScriptValue(engine, int(122))", 122); + value.insert("QScriptValue(engine, uint(124))", 124); + value.insert("QScriptValue(engine, 0)", 0); + value.insert("QScriptValue(engine, 0.0)", 0); + value.insert("QScriptValue(engine, 123.0)", 123); + value.insert("QScriptValue(engine, 6.37e-8)", 0); + value.insert("QScriptValue(engine, -6.37e-8)", 0); + value.insert("QScriptValue(engine, 0x43211234)", 4660); + value.insert("QScriptValue(engine, 0x10000)", 0); + value.insert("QScriptValue(engine, 0x10001)", 1); + value.insert("QScriptValue(engine, qSNaN())", 0); + value.insert("QScriptValue(engine, qQNaN())", 0); + value.insert("QScriptValue(engine, qInf())", 0); + value.insert("QScriptValue(engine, -qInf())", 0); + value.insert("QScriptValue(engine, \"NaN\")", 0); + value.insert("QScriptValue(engine, \"Infinity\")", 0); + value.insert("QScriptValue(engine, \"-Infinity\")", 0); + value.insert("QScriptValue(engine, \"ciao\")", 0); + value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0); + value.insert("QScriptValue(engine, QString(\"\"))", 0); + value.insert("QScriptValue(engine, QString())", 0); + value.insert("QScriptValue(engine, QString(\"0\"))", 0); + value.insert("QScriptValue(engine, QString(\"123\"))", 123); + value.insert("QScriptValue(engine, QString(\"1.23\"))", 1); + value.insert("engine->evaluate(\"[]\")", 0); + value.insert("engine->evaluate(\"{}\")", 0); + value.insert("engine->evaluate(\"Object.prototype\")", 0); + value.insert("engine->evaluate(\"Date.prototype\")", 0); + value.insert("engine->evaluate(\"Array.prototype\")", 0); + value.insert("engine->evaluate(\"Function.prototype\")", 0); + value.insert("engine->evaluate(\"Error.prototype\")", 0); + value.insert("engine->evaluate(\"Object\")", 0); + value.insert("engine->evaluate(\"Array\")", 0); + value.insert("engine->evaluate(\"Number\")", 0); + value.insert("engine->evaluate(\"Function\")", 0); + value.insert("engine->evaluate(\"(function() { return 1; })\")", 0); + value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0); + value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0); + value.insert("engine->evaluate(\"/foo/\")", 0); + value.insert("engine->evaluate(\"new Object()\")", 0); + value.insert("engine->evaluate(\"new Array()\")", 0); + value.insert("engine->evaluate(\"new Error()\")", 0); + } + newRow(expr) << value.value(expr); +} + +void tst_QScriptValue::qscriptvalue_castquint16_test(const char*, const QScriptValue& value) +{ + QFETCH(quint16, expected); + QCOMPARE(qscriptvalue_cast(value), expected); +} + +DEFINE_TEST_FUNCTION(qscriptvalue_castquint16) -- cgit v0.12 From 9647dfb6d363812c59bd7ffb2a6c4ee2a34035ce Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Tue, 2 Feb 2010 22:57:39 +0100 Subject: Fix license headers on these new files (and the generator). --- tests/auto/qscriptvalue/testgen/gen.py | 44 +++++--- tests/auto/qscriptvalue/testgen/main.cpp | 58 +++++++---- tests/auto/qscriptvalue/testgen/testgenerator.cpp | 116 ++++++++++++++------- tests/auto/qscriptvalue/testgen/testgenerator.h | 58 +++++++---- .../qscriptvalue/tst_qscriptvalue_generated.cpp | 58 +++++++---- 5 files changed, 230 insertions(+), 104 deletions(-) diff --git a/tests/auto/qscriptvalue/testgen/gen.py b/tests/auto/qscriptvalue/testgen/gen.py index fddb853..c14fe86 100755 --- a/tests/auto/qscriptvalue/testgen/gen.py +++ b/tests/auto/qscriptvalue/testgen/gen.py @@ -3,20 +3,36 @@ #Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) -#This library is free software; you can redistribute it and/or -#modify it under the terms of the GNU Library General Public -#License as published by the Free Software Foundation; either -#version 2 of the License, or (at your option) any later version. - -#This library is distributed in the hope that it will be useful, -#but WITHOUT ANY WARRANTY; without even the implied warranty of -#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -#Library General Public License for more details. - -#You should have received a copy of the GNU Library General Public License -#along with this library; see the file COPYING.LIB. If not, write to -#the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -#Boston, MA 02110-1301, USA. +## $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$ from __future__ import with_statement from string import Template diff --git a/tests/auto/qscriptvalue/testgen/main.cpp b/tests/auto/qscriptvalue/testgen/main.cpp index 389a725..fe35de9 100644 --- a/tests/auto/qscriptvalue/testgen/main.cpp +++ b/tests/auto/qscriptvalue/testgen/main.cpp @@ -1,21 +1,43 @@ -/* - Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ +/**************************************************************************** +** +** 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 test suite 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 "testgenerator.h" #include diff --git a/tests/auto/qscriptvalue/testgen/testgenerator.cpp b/tests/auto/qscriptvalue/testgen/testgenerator.cpp index 199e84b..d852ea5 100644 --- a/tests/auto/qscriptvalue/testgen/testgenerator.cpp +++ b/tests/auto/qscriptvalue/testgen/testgenerator.cpp @@ -1,21 +1,43 @@ -/* - Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ +/**************************************************************************** +** +** 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 test suite 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 "testgenerator.h" @@ -364,24 +386,46 @@ static QString generateCompareDef(const QString& comparisionType, const QList& allDataTags) { - static const QString templ = "/*\n"\ - " Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)\n"\ - "\n"\ - " This library is free software; you can redistribute it and/or\n"\ - " modify it under the terms of the GNU Library General Public\n"\ - " License as published by the Free Software Foundation; either\n"\ - " version 2 of the License, or (at your option) any later version.\n"\ - "\n"\ - " This library is distributed in the hope that it will be useful,\n"\ - " but WITHOUT ANY WARRANTY; without even the implied warranty of\n"\ - " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n"\ - " Library General Public License for more details.\n"\ - "\n"\ - " You should have received a copy of the GNU Library General Public License\n"\ - " along with this library; see the file COPYING.LIB. If not, write to\n"\ - " the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,\n"\ - " Boston, MA 02110-1301, USA.\n"\ - "*/\n"\ + static const QString templ = "/****************************************************************************\n" + "**\n" + "** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).\n" + "** All rights reserved.\n" + "** Contact: Nokia Corporation (qt-info@nokia.com)\n" + "**\n" + "** This file is part of the test suite of the Qt Toolkit.\n" + "**\n" + "** $QT_BEGIN_LICENSE:LGPL$\n" + "** No Commercial Usage\n" + "** This file contains pre-release code and may not be distributed.\n" + "** You may use this file in accordance with the terms and conditions\n" + "** contained in the Technology Preview License Agreement accompanying\n" + "** this package.\n" + "**\n" + "** GNU Lesser General Public License Usage\n" + "** Alternatively, this file may be used under the terms of the GNU Lesser\n" + "** General Public License version 2.1 as published by the Free Software\n" + "** Foundation and appearing in the file LICENSE.LGPL included in the\n" + "** packaging of this file. Please review the following information to\n" + "** ensure the GNU Lesser General Public License version 2.1 requirements\n" + "** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.\n" + "**\n" + "** In addition, as a special exception, Nokia gives you certain additional\n" + "** rights. These rights are described in the Nokia Qt LGPL Exception\n" + "** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.\n" + "**\n" + "** If you have questions regarding the use of this file, please contact\n" + "** Nokia at qt-info@nokia.com.\n" + "**\n" + "**\n" + "**\n" + "**\n" + "**\n" + "**\n" + "**\n" + "**\n" + "** $QT_END_LICENSE$\n" + "**\n" + "****************************************************************************/\n" "\n"\ "#include \"tst_qscriptvalue.h\"\n\n"\ "#define DEFINE_TEST_VALUE(expr) m_values.insert(QString::fromLatin1(#expr), expr)\n"\ diff --git a/tests/auto/qscriptvalue/testgen/testgenerator.h b/tests/auto/qscriptvalue/testgen/testgenerator.h index d3a2196..8f4a357 100644 --- a/tests/auto/qscriptvalue/testgen/testgenerator.h +++ b/tests/auto/qscriptvalue/testgen/testgenerator.h @@ -1,21 +1,43 @@ -/* - Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ +/**************************************************************************** +** +** 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 test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ #ifndef TESTGENERATOR_H #define TESTGENERATOR_H diff --git a/tests/auto/qscriptvalue/tst_qscriptvalue_generated.cpp b/tests/auto/qscriptvalue/tst_qscriptvalue_generated.cpp index 6a59509..1d105b4 100644 --- a/tests/auto/qscriptvalue/tst_qscriptvalue_generated.cpp +++ b/tests/auto/qscriptvalue/tst_qscriptvalue_generated.cpp @@ -1,21 +1,43 @@ -/* - Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ +/**************************************************************************** +** +** 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 test suite 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 "tst_qscriptvalue.h" -- cgit v0.12 From 89377dc65ea505de568bb7243396ae260f435438 Mon Sep 17 00:00:00 2001 From: Kurt Korbatits Date: Wed, 3 Feb 2010 09:36:41 +1000 Subject: Updated changlog 4.6.2 Added bug 7044 to log. --- dist/changes-4.6.2 | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dist/changes-4.6.2 b/dist/changes-4.6.2 index d35f945..d743f10 100644 --- a/dist/changes-4.6.2 +++ b/dist/changes-4.6.2 @@ -85,6 +85,12 @@ QtXml - foo * bar +QtMultimedia +------------ + + - QAudioInput + * [QTBUG-7044]: QAudioInput stopped working correctly after suspend()/resume() on linux. + Qt Plugins ---------- -- cgit v0.12 From 0c73b18d0750bee9da4b88de595aa6093b5be820 Mon Sep 17 00:00:00 2001 From: Jani Hautakangas Date: Wed, 3 Feb 2010 10:46:53 +0200 Subject: Implementation for QVGPixmapData to/fromSymbianCFbsBitmap functions. --- mkspecs/common/symbian/symbian.conf | 2 +- src/openvg/qpixmapdata_vg.cpp | 94 ++++++++++++++++++++++++++++++++++++- tests/auto/qpixmap/tst_qpixmap.cpp | 45 +++++++++++++++++- 3 files changed, 136 insertions(+), 5 deletions(-) diff --git a/mkspecs/common/symbian/symbian.conf b/mkspecs/common/symbian/symbian.conf index b1ef354..7162bad 100644 --- a/mkspecs/common/symbian/symbian.conf +++ b/mkspecs/common/symbian/symbian.conf @@ -70,7 +70,7 @@ QMAKE_LIBS_GUI = $$QMAKE_LIBS_CORE -lfbscli -lbitgdi -lhal -lgdi -lws32 QMAKE_LIBS_NETWORK = QMAKE_LIBS_EGL = -llibEGL QMAKE_LIBS_OPENGL = -QMAKE_LIBS_OPENVG = -llibOpenVG -lgraphicsresource +QMAKE_LIBS_OPENVG = -llibOpenVG -lgraphicsresource -lfbscli -lbitgdi -lgdi QMAKE_LIBS_COMPAT = QMAKE_LIBS_QT_ENTRY = -llibcrt0.lib QMAKE_LIBS_S60 = -lavkon diff --git a/src/openvg/qpixmapdata_vg.cpp b/src/openvg/qpixmapdata_vg.cpp index cc0e5a1..3087b77 100644 --- a/src/openvg/qpixmapdata_vg.cpp +++ b/src/openvg/qpixmapdata_vg.cpp @@ -46,11 +46,13 @@ #include "qvgimagepool_p.h" #ifdef QT_SYMBIAN_SUPPORTS_SGIMAGE +#include +#include #include typedef EGLImageKHR (*pfnEglCreateImageKHR)(EGLDisplay, EGLContext, EGLenum, EGLClientBuffer, EGLint*); typedef EGLBoolean (*pfnEglDestroyImageKHR)(EGLDisplay, EGLImageKHR); typedef VGImage (*pfnVgCreateEGLImageTargetKHR)(VGeglImageKHR); -#endif +#endif // QT_SYMBIAN_SUPPORTS_SGIMAGE QT_BEGIN_NAMESPACE @@ -425,6 +427,34 @@ Q_OPENVG_EXPORT VGImage qPixmapToVGImage(const QPixmap& pixmap) } #if defined(Q_OS_SYMBIAN) + +static CFbsBitmap* createBlitCopy(CFbsBitmap* bitmap) +{ + CFbsBitmap *copy = q_check_ptr(new CFbsBitmap); + if(!copy) + return 0; + + if (copy->Create(bitmap->SizeInPixels(), bitmap->DisplayMode()) != KErrNone) { + delete copy; + copy = 0; + + return 0; + } + + CFbsBitmapDevice* bitmapDevice = 0; + CFbsBitGc *bitmapGc = 0; + QT_TRAP_THROWING(bitmapDevice = CFbsBitmapDevice::NewL(copy)); + QT_TRAP_THROWING(bitmapGc = CFbsBitGc::NewL()); + bitmapGc->Activate(bitmapDevice); + + bitmapGc->BitBlt(TPoint(), bitmap); + + delete bitmapGc; + delete bitmapDevice; + + return copy; +} + void QVGPixmapData::cleanup() { is_null = w = h = 0; @@ -510,7 +540,49 @@ void QVGPixmapData::fromNativeType(void* pixmap, NativeType type) eglDestroyImageKHR(context->display(), eglImage); SgDriver::Close(); } else if (type == QPixmapData::FbsBitmap) { + CFbsBitmap *bitmap = reinterpret_cast(pixmap); + + bool deleteSourceBitmap = false; + +#ifdef Q_SYMBIAN_HAS_EXTENDED_BITMAP_TYPE + + // Rasterize extended bitmaps + + TUid extendedBitmapType = bitmap->ExtendedBitmapType(); + if (extendedBitmapType != KNullUid) { + bitmap = createBlitCopy(bitmap); + deleteSourceBitmap = true; + } +#endif + + if (bitmap->IsCompressedInRAM()) { + bitmap = createBlitCopy(bitmap); + deleteSourceBitmap = true; + } + + TDisplayMode displayMode = bitmap->DisplayMode(); + QImage::Format format = qt_TDisplayMode2Format(displayMode); + + TSize size = bitmap->SizeInPixels(); + + bitmap->BeginDataAccess(); + uchar *bytes = (uchar*)bitmap->DataAddress(); + QImage img = QImage(bytes, size.iWidth, size.iHeight, format); + img = img.copy(); + bitmap->EndDataAccess(); + + if(displayMode == EGray2) { + //Symbian thinks set pixels are white/transparent, Qt thinks they are foreground/solid + //So invert mono bitmaps so that masks work correctly. + img.invertPixels(); + } else if(displayMode == EColor16M) { + img = img.rgbSwapped(); // EColor16M is BGR + } + + fromImage(img, Qt::AutoColor); + if(deleteSourceBitmap) + delete bitmap; } #else Q_UNUSED(pixmap); @@ -593,7 +665,25 @@ void* QVGPixmapData::toNativeType(NativeType type) SgDriver::Close(); return reinterpret_cast(sgImage); } else if (type == QPixmapData::FbsBitmap) { - return 0; + CFbsBitmap *bitmap = q_check_ptr(new CFbsBitmap); + + if (bitmap) { + if (bitmap->Create(TSize(source.width(), source.height()), + EColor16MAP) == KErrNone) { + const uchar *sptr = qt_vg_imageBits(source); + bitmap->BeginDataAccess(); + + uchar *dptr = (uchar*)bitmap->DataAddress(); + Mem::Copy(dptr, sptr, source.byteCount()); + + bitmap->EndDataAccess(); + } else { + delete bitmap; + bitmap = 0; + } + } + + return reinterpret_cast(bitmap); } #else Q_UNUSED(type); diff --git a/tests/auto/qpixmap/tst_qpixmap.cpp b/tests/auto/qpixmap/tst_qpixmap.cpp index 8bcd5e8..d7c6ad3 100644 --- a/tests/auto/qpixmap/tst_qpixmap.cpp +++ b/tests/auto/qpixmap/tst_qpixmap.cpp @@ -145,9 +145,11 @@ private slots: void fromWinHICON(); #endif -#if defined(Q_WS_S60) +#if defined(Q_OS_SYMBIAN) void fromSymbianCFbsBitmap_data(); void fromSymbianCFbsBitmap(); + void toSymbianCFbsBitmap_data(); + void toSymbianCFbsBitmap(); #endif void onlyNullPixmapsOutsideGuiThread(); @@ -1110,7 +1112,7 @@ void tst_QPixmap::fromWinHICON() #endif // Q_WS_WIN -#if defined(Q_WS_S60) +#if defined(Q_OS_SYMBIAN) Q_DECLARE_METATYPE(TDisplayMode) void tst_QPixmap::fromSymbianCFbsBitmap_data() @@ -1206,6 +1208,45 @@ void tst_QPixmap::fromSymbianCFbsBitmap() CleanupStack::PopAndDestroy(3); } + +void tst_QPixmap::toSymbianCFbsBitmap_data() +{ + QTest::addColumn("red"); + QTest::addColumn("green"); + QTest::addColumn("blue"); + + QTest::newRow("red") << 255 << 0 << 0; + QTest::newRow("green") << 0 << 255 << 0; + QTest::newRow("blue") << 0 << 0 << 255; +} + +void tst_QPixmap::toSymbianCFbsBitmap() +{ + QFETCH(int, red); + QFETCH(int, green); + QFETCH(int, blue); + + QPixmap pm(100, 100); + pm.fill(QColor(red, green, blue)); + + CFbsBitmap *bitmap = pm.toSymbianCFbsBitmap(); + + QVERIFY(bitmap != 0); + + // Verify size + QCOMPARE(100, (int) bitmap->SizeInPixels().iWidth); + QCOMPARE(100, (int) bitmap->SizeInPixels().iHeight); + + // Verify pixel color + TRgb pixel; + bitmap->GetPixel(pixel, TPoint(0,0)); + QCOMPARE((int)pixel.Red(), red); + QCOMPARE((int)pixel.Green(), green); + QCOMPARE((int)pixel.Blue(), blue); + + // Clean up + delete bitmap; +} #endif void tst_QPixmap::onlyNullPixmapsOutsideGuiThread() -- cgit v0.12 From 2a8d20453926082062246fc4cc788f88ea3c59ae Mon Sep 17 00:00:00 2001 From: Janne Anttila Date: Wed, 3 Feb 2010 11:37:24 +0200 Subject: S60 softkey refactoring (support for merging, priorities and menus) Implemented features: Softkey Merging: Widget can set only one softkey and set flag that rest of the softkeys shall be taken from parent. Priority Handling: If multiple sokftkeys with same role are set, the highest priority action gets displayed. Custom Softkey Menu: By setting QMenu to QAction and assigning a softkey role for that action, the native menubar will be displayed when sofkey is clicked. Softkey Image: Initial code for implementing sofkey image support, the final implementation is still pending legal acceptance to use eiksoftkeyimage.h header file which is under EPL license. Task-number: QTBUG-7315 Review-By: Sami Merila Review-By: Jason Barron --- src/corelib/global/qnamespace.h | 3 + src/corelib/global/qnamespace.qdoc | 15 +- src/gui/kernel/kernel.pri | 53 +++-- src/gui/kernel/qsoftkeymanager.cpp | 209 ++++++----------- src/gui/kernel/qsoftkeymanager_common_p.h | 82 +++++++ src/gui/kernel/qsoftkeymanager_p.h | 22 +- src/gui/kernel/qsoftkeymanager_s60.cpp | 366 ++++++++++++++++++++++++++++++ src/gui/kernel/qsoftkeymanager_s60_p.h | 109 +++++++++ src/gui/kernel/qt_s60_p.h | 6 + src/gui/widgets/qmainwindow.cpp | 2 - src/gui/widgets/qmenu_p.h | 7 +- src/gui/widgets/qmenu_symbian.cpp | 34 ++- src/gui/widgets/qmenubar.cpp | 2 +- 13 files changed, 727 insertions(+), 183 deletions(-) create mode 100644 src/gui/kernel/qsoftkeymanager_common_p.h create mode 100644 src/gui/kernel/qsoftkeymanager_s60.cpp create mode 100644 src/gui/kernel/qsoftkeymanager_s60_p.h diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 38e1886..177bee4 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -497,6 +497,9 @@ public: WA_WState_AcceptedTouchBeginEvent = 122, WA_TouchPadAcceptSingleTouchEvents = 123, + WA_MergeSoftkeys = 124, + WA_MergeSoftkeysRecursively = 125, + // Add new attributes before this line WA_AttributeCount }; diff --git a/src/corelib/global/qnamespace.qdoc b/src/corelib/global/qnamespace.qdoc index 871dd5c..6627c76 100644 --- a/src/corelib/global/qnamespace.qdoc +++ b/src/corelib/global/qnamespace.qdoc @@ -524,11 +524,11 @@ receiver are in the same thread. Same as QueuedConnection, if the emitter and receiver are in different threads. - \value DirectConnection + \value DirectConnection The slot is invoked immediately, when the signal is emitted. - \value QueuedConnection + \value QueuedConnection The slot is invoked when control returns to the event loop of the receiver's thread. The slot is executed in the receiver's thread. @@ -1243,6 +1243,17 @@ \value WA_TouchPadAcceptSingleTouchEvents Allows touchpad single touch events to be sent to the widget. + \value WA_MergeSoftkeys Allows widget to merge softkeys with parent widget, + i.e. widget can set only one softkeys and request softkey implementation + to take rest of the softkeys from the parent. Note parents are traversed until + WA_MergeSoftkeys is not set. See also Qt::WA_MergeSoftkeysRecursively + This attribute currently has effect only on Symbian platforms + + \value WA_MergeSoftkeysRecursively Allows widget to merge softkeys recursively + with all parents. If this attribute is set, the widget parents are traversed until + window boundary (widget without parent or dialog) is found. + This attribute currently has effect only on Symbian platforms + \omitvalue WA_SetLayoutDirection \omitvalue WA_InputMethodTransparent \omitvalue WA_WState_CompressKeys diff --git a/src/gui/kernel/kernel.pri b/src/gui/kernel/kernel.pri index f2bd288..0993b86 100644 --- a/src/gui/kernel/kernel.pri +++ b/src/gui/kernel/kernel.pri @@ -7,7 +7,7 @@ PRECOMPILED_HEADER = kernel/qt_gui_pch.h KERNEL_P= kernel HEADERS += \ kernel/qaction.h \ - kernel/qaction_p.h \ + kernel/qaction_p.h \ kernel/qactiongroup.h \ kernel/qapplication.h \ kernel/qapplication_p.h \ @@ -37,8 +37,8 @@ HEADERS += \ kernel/qstackedlayout.h \ kernel/qtooltip.h \ kernel/qwhatsthis.h \ - kernel/qwidget.h \ - kernel/qwidget_p.h \ + kernel/qwidget.h \ + kernel/qwidget_p.h \ kernel/qwidgetaction.h \ kernel/qwidgetaction_p.h \ kernel/qwindowdefs.h \ @@ -49,6 +49,7 @@ HEADERS += \ kernel/qgesturerecognizer.h \ kernel/qgesturemanager_p.h \ kernel/qsoftkeymanager_p.h \ + kernel/qsoftkeymanager_common_p.h \ kernel/qguiplatformplugin_p.h SOURCES += \ @@ -84,14 +85,14 @@ SOURCES += \ kernel/qgesturerecognizer.cpp \ kernel/qgesturemanager.cpp \ kernel/qsoftkeymanager.cpp \ - kernel/qdesktopwidget.cpp \ + kernel/qdesktopwidget.cpp \ kernel/qguiplatformplugin.cpp win32 { DEFINES += QT_NO_DIRECTDRAW - HEADERS += \ - kernel/qwinnativepangesturerecognizer_win_p.h + HEADERS += \ + kernel/qwinnativepangesturerecognizer_win_p.h SOURCES += \ kernel/qapplication_win.cpp \ @@ -103,30 +104,34 @@ win32 { kernel/qsound_win.cpp \ kernel/qwidget_win.cpp \ kernel/qole_win.cpp \ - kernel/qkeymapper_win.cpp \ - kernel/qwinnativepangesturerecognizer_win.cpp + kernel/qkeymapper_win.cpp \ + kernel/qwinnativepangesturerecognizer_win.cpp - !contains(DEFINES, QT_NO_DIRECTDRAW):LIBS += ddraw.lib + !contains(DEFINES, QT_NO_DIRECTDRAW):LIBS += ddraw.lib } symbian { - SOURCES += \ - kernel/qapplication_s60.cpp \ - kernel/qeventdispatcher_s60.cpp \ - kernel/qwidget_s60.cpp \ - kernel/qcursor_s60.cpp \ - kernel/qdesktopwidget_s60.cpp \ - kernel/qkeymapper_s60.cpp\ - kernel/qclipboard_s60.cpp\ - kernel/qdnd_s60.cpp \ - kernel/qsound_s60.cpp + SOURCES += \ + kernel/qapplication_s60.cpp \ + kernel/qeventdispatcher_s60.cpp \ + kernel/qwidget_s60.cpp \ + kernel/qcursor_s60.cpp \ + kernel/qdesktopwidget_s60.cpp \ + kernel/qkeymapper_s60.cpp\ + kernel/qclipboard_s60.cpp\ + kernel/qdnd_s60.cpp \ + kernel/qsound_s60.cpp \ + kernel/qsoftkeymanager_s60.cpp - HEADERS += \ - kernel/qt_s60_p.h \ - kernel/qeventdispatcher_s60_p.h - LIBS += -lbafl -lestor + HEADERS += \ + kernel/qt_s60_p.h \ + kernel/qeventdispatcher_s60_p.h \ + kernel/qsoftkeymanager_s60_p.h + + LIBS += -lbafl -lestor - INCLUDEPATH += $$MW_LAYER_SYSTEMINCLUDE + INCLUDEPATH += $$MW_LAYER_SYSTEMINCLUDE + INCLUDEPATH += ../3rdparty/s60 } diff --git a/src/gui/kernel/qsoftkeymanager.cpp b/src/gui/kernel/qsoftkeymanager.cpp index 354f90b..6d108b0 100644 --- a/src/gui/kernel/qsoftkeymanager.cpp +++ b/src/gui/kernel/qsoftkeymanager.cpp @@ -41,34 +41,18 @@ #include "qapplication.h" #include "qevent.h" -#ifdef Q_WS_S60 -#include "qstyle.h" -#include "private/qt_s60_p.h" -#endif +#include "qbitmap.h" #include "private/qsoftkeymanager_p.h" #include "private/qobject_p.h" - -#ifndef QT_NO_SOFTKEYMANAGER -QT_BEGIN_NAMESPACE +#include "private/qsoftkeymanager_common_p.h" #ifdef Q_WS_S60 -static const int s60CommandStart = 6000; +#include "private/qsoftkeymanager_s60_p.h" #endif -class QSoftKeyManagerPrivate : public QObjectPrivate -{ - Q_DECLARE_PUBLIC(QSoftKeyManager) - -public: - static void updateSoftKeys_sys(const QList &softKeys); - -private: - QHash keyedActions; - static QSoftKeyManager *self; - static QWidget *softKeySource; -}; +#ifndef QT_NO_SOFTKEYMANAGER +QT_BEGIN_NAMESPACE -QWidget *QSoftKeyManagerPrivate::softKeySource = 0; QSoftKeyManager *QSoftKeyManagerPrivate::self = 0; const char *QSoftKeyManager::standardSoftKeyText(StandardSoftKey standardKey) @@ -105,7 +89,12 @@ QSoftKeyManager *QSoftKeyManager::instance() return QSoftKeyManagerPrivate::self; } -QSoftKeyManager::QSoftKeyManager() : QObject(*(new QSoftKeyManagerPrivate), 0) +QSoftKeyManager::QSoftKeyManager() : +#ifdef Q_WS_S60 + QObject(*(new QSoftKeyManagerPrivateS60), 0) +#else + QObject(*(new QSoftKeyManagerPrivate), 0) +#endif { } @@ -115,10 +104,11 @@ QAction *QSoftKeyManager::createAction(StandardSoftKey standardKey, QWidget *act QAction *action = new QAction(QSoftKeyManager::tr(text), actionWidget); QAction::SoftKeyRole softKeyRole = QAction::NoSoftKey; switch (standardKey) { + case MenuSoftKey: // FALL-THROUGH + action->setProperty(MENU_ACTION_PROPERTY, QVariant(true)); // TODO: can be refactored away to use _q_action_menubar case OkSoftKey: case SelectSoftKey: case DoneSoftKey: - case MenuSoftKey: softKeyRole = QAction::PositiveSoftKey; break; case CancelSoftKey: @@ -147,7 +137,7 @@ QAction *QSoftKeyManager::createKeyedAction(StandardSoftKey standardKey, Qt::Key #endif //QT_NO_ACTION } -void QSoftKeyManager::cleanupHash(QObject* obj) +void QSoftKeyManager::cleanupHash(QObject *obj) { Q_D(QSoftKeyManager); QAction *action = qobject_cast(obj); @@ -175,137 +165,78 @@ void QSoftKeyManager::updateSoftKeys() QApplication::postEvent(QSoftKeyManager::instance(), event); } -bool QSoftKeyManager::event(QEvent *e) +bool QSoftKeyManager::appendSoftkeys(const QWidget &source, int level) { -#ifndef QT_NO_ACTION - if (e->type() == QEvent::UpdateSoftKeys) { - QList softKeys; - QWidget *source = QApplication::focusWidget(); - do { - if (source) { - QList actions = source->actions(); - for (int i = 0; i < actions.count(); ++i) { - if (actions.at(i)->softKeyRole() != QAction::NoSoftKey) - softKeys.append(actions.at(i)); - } - - QWidget *parent = source->parentWidget(); - if (parent && softKeys.isEmpty() && !source->isWindow()) - source = parent; - else - break; - } else { - source = QApplication::activeWindow(); - } - } while (source); - - QSoftKeyManagerPrivate::softKeySource = source; - QSoftKeyManagerPrivate::updateSoftKeys_sys(softKeys); - return true; + Q_D(QSoftKeyManager); + bool ret = false; + QList actions = source.actions(); + for (int i = 0; i < actions.count(); ++i) { + if (actions.at(i)->softKeyRole() != QAction::NoSoftKey) { + d->requestedSoftKeyActions.insert(level, actions.at(i)); + ret = true; + } } -#endif //QT_NO_ACTION - return false; + return ret; } -#ifdef Q_WS_S60 -void QSoftKeyManagerPrivate::updateSoftKeys_sys(const QList &softkeys) +QWidget *QSoftKeyManager::softkeySource(QWidget *previousSource, bool& recursiveMerging) { - // lets not update softkeys if s60 native dialog or menu is shown - if (QApplication::testAttribute(Qt::AA_S60DontConstructApplicationPanes) - || CCoeEnv::Static()->AppUi()->IsDisplayingMenuOrDialog()) - return; - - CEikButtonGroupContainer* nativeContainer = S60->buttonGroupContainer(); - nativeContainer->DrawableWindow()->SetOrdinalPosition(0); - nativeContainer->DrawableWindow()->SetPointerCapturePriority(1); //keep softkeys available in modal dialog - nativeContainer->DrawableWindow()->SetFaded(EFalse, RWindowTreeNode::EFadeIncludeChildren); - - int position = -1; - bool needsExitButton = true; - QT_TRAP_THROWING( - //Using -1 instead of EAknSoftkeyEmpty to avoid flickering. - nativeContainer->SetCommandL(0, -1, KNullDesC); - nativeContainer->SetCommandL(2, -1, KNullDesC); - ); - - for (int index = 0; index < softkeys.count(); index++) { - const QAction* softKeyAction = softkeys.at(index); - switch (softKeyAction->softKeyRole()) { - // Positive Actions on the LSK - case QAction::PositiveSoftKey: - position = 0; - break; - case QAction::SelectSoftKey: - position = 0; - break; - // Negative Actions on the RSK - case QAction::NegativeSoftKey: - needsExitButton = false; - position = 2; - break; - default: - break; - } - - int command = (softKeyAction->objectName().contains(QLatin1String("_q_menuSoftKeyAction"))) - ? EAknSoftkeyOptions - : s60CommandStart + index; - - // _q_menuSoftKeyAction action is set to "invisible" and all invisible actions are by default - // disabled. However we never want to dim options softkey, even it is set to "invisible" - bool dimmed = (command == EAknSoftkeyOptions) ? false : !softKeyAction->isEnabled(); - - if (position != -1) { - const int underlineShortCut = QApplication::style()->styleHint(QStyle::SH_UnderlineShortcut); - QString iconText = softKeyAction->iconText(); - TPtrC text = qt_QString2TPtrC( underlineShortCut ? softKeyAction->text() : iconText); - QT_TRAP_THROWING( - nativeContainer->SetCommandL(position, command, text); - nativeContainer->DimCommand(command, dimmed); - ); - } + Q_D(QSoftKeyManager); + QWidget *source = NULL; + if (!previousSource) { + // Initial source is primarily focuswidget and secondarily activeWindow + source = QApplication::focusWidget(); + if (!source) + source = QApplication::activeWindow(); + } else { + // Softkey merging is based on four criterias + // 1. Implicit merging is used whenever focus widget does not specify any softkeys + bool implicitMerging = d->requestedSoftKeyActions.isEmpty(); + // 2. Explicit merging with parent is used whenever WA_MergeSoftkeys widget attribute is set + bool explicitMerging = previousSource->testAttribute(Qt::WA_MergeSoftkeys); + // 3. Explicit merging with all parents + recursiveMerging |= previousSource->testAttribute(Qt::WA_MergeSoftkeysRecursively); + // 4. Implicit and explicit merging always stops at window boundary + bool merging = (implicitMerging || explicitMerging || recursiveMerging) && !previousSource->isWindow(); + + source = merging ? previousSource->parentWidget() : NULL; } - - const Qt::WindowType sourceWindowType = QSoftKeyManagerPrivate::softKeySource - ? QSoftKeyManagerPrivate::softKeySource->window()->windowType() - : Qt::Widget; - - if (needsExitButton && sourceWindowType != Qt::Dialog && sourceWindowType != Qt::Popup) - QT_TRAP_THROWING( - nativeContainer->SetCommandL(2, EAknSoftkeyExit, qt_QString2TPtrC(QSoftKeyManager::tr("Exit")))); - - nativeContainer->DrawDeferred(); // 3.1 needs an extra invitation + return source; } -bool QSoftKeyManager::handleCommand(int command) +bool QSoftKeyManager::handleUpdateSoftKeys() { - if (command >= s60CommandStart && QSoftKeyManagerPrivate::softKeySource) { - int index = command - s60CommandStart; - const QList& softKeys = QSoftKeyManagerPrivate::softKeySource->actions(); - for (int i = 0, j = 0; i < softKeys.count(); ++i) { - QAction *action = softKeys.at(i); - if (action->softKeyRole() != QAction::NoSoftKey) { - if (j == index) { - QWidget *parent = action->parentWidget(); - if (parent && parent->isEnabled()) { - action->activate(QAction::Trigger); - return true; - } - } - j++; - } + Q_D(QSoftKeyManager); + int level = 0; + d->requestedSoftKeyActions.clear(); + bool recursiveMerging = false; + QWidget *source = softkeySource(NULL, recursiveMerging); + do { + if (source) { + bool added = appendSoftkeys(*source, level); + source = softkeySource(source, recursiveMerging); + level = added ? ++level : level; } - } + } while (source); - return false; + d->updateSoftKeys_sys(); + return true; } -#else - -void QSoftKeyManagerPrivate::updateSoftKeys_sys(const QList &) +bool QSoftKeyManager::event(QEvent *e) { +#ifndef QT_NO_ACTION + if (e->type() == QEvent::UpdateSoftKeys) + return handleUpdateSoftKeys(); +#endif //QT_NO_ACTION + return false; } +#ifdef Q_WS_S60 +bool QSoftKeyManager::handleCommand(int command) +{ + return static_cast(QSoftKeyManager::instance()->d_func())->handleCommand(command); +} #endif QT_END_NAMESPACE diff --git a/src/gui/kernel/qsoftkeymanager_common_p.h b/src/gui/kernel/qsoftkeymanager_common_p.h new file mode 100644 index 0000000..460d0dc --- /dev/null +++ b/src/gui/kernel/qsoftkeymanager_common_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** 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$ +** +****************************************************************************/ + +#ifndef QSOFTKEYMANAGER_COMMON_P_H +#define QSOFTKEYMANAGER_COMMON_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +QT_BEGIN_HEADER + +#ifndef QT_NO_SOFTKEYMANAGER + +QT_BEGIN_NAMESPACE + +class QSoftKeyManagerPrivate : public QObjectPrivate +{ + Q_DECLARE_PUBLIC(QSoftKeyManager) + +public: + virtual void updateSoftKeys_sys() {}; + +protected: + static QSoftKeyManager *self; + QHash keyedActions; + QMultiHash requestedSoftKeyActions; + +}; + +QT_END_NAMESPACE + +#endif //QT_NO_SOFTKEYMANAGER + +QT_END_HEADER + +#endif // QSOFTKEYMANAGER_COMMON_P_H \ No newline at end of file diff --git a/src/gui/kernel/qsoftkeymanager_p.h b/src/gui/kernel/qsoftkeymanager_p.h index c901a29..ce902fe 100644 --- a/src/gui/kernel/qsoftkeymanager_p.h +++ b/src/gui/kernel/qsoftkeymanager_p.h @@ -63,6 +63,8 @@ QT_BEGIN_NAMESPACE class QSoftKeyManagerPrivate; +const char MENU_ACTION_PROPERTY[] = "_q_menuaction"; + class Q_AUTOTEST_EXPORT QSoftKeyManager : public QObject { Q_OBJECT @@ -79,26 +81,30 @@ public: }; static void updateSoftKeys(); - static QAction *createAction(StandardSoftKey standardKey, QWidget *actionWidget); - static QAction *createKeyedAction(StandardSoftKey standardKey, Qt::Key key, QWidget *actionWidget); - #ifdef Q_WS_S60 static bool handleCommand(int); #endif -private: - QSoftKeyManager(); - static QSoftKeyManager *instance(); - static const char *standardSoftKeyText(StandardSoftKey standardKey); + static QAction *createAction(StandardSoftKey standardKey, QWidget *actionWidget); + static QAction *createKeyedAction(StandardSoftKey standardKey, Qt::Key key, QWidget *actionWidget); protected: bool event(QEvent *e); - Q_DISABLE_COPY(QSoftKeyManager) +private: + QSoftKeyManager(); + static QSoftKeyManager *instance(); + static const char *standardSoftKeyText(StandardSoftKey standardKey); + bool appendSoftkeys(const QWidget &source, int level); + QWidget *softkeySource(QWidget *previousSource, bool& recursiveMerging); + bool handleUpdateSoftKeys(); private Q_SLOTS: void cleanupHash(QObject* obj); void sendKeyEvent(); + +private: + Q_DISABLE_COPY(QSoftKeyManager) }; QT_END_NAMESPACE diff --git a/src/gui/kernel/qsoftkeymanager_s60.cpp b/src/gui/kernel/qsoftkeymanager_s60.cpp new file mode 100644 index 0000000..67ed8b0 --- /dev/null +++ b/src/gui/kernel/qsoftkeymanager_s60.cpp @@ -0,0 +1,366 @@ +/**************************************************************************** +** +** 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 "qapplication.h" +#include "qevent.h" +#include "qbitmap.h" +#include "qstyle.h" +#include "qmenubar.h" +#include "private/qt_s60_p.h" +#include "private/qmenu_p.h" +#include "private/qsoftkeymanager_p.h" +#include "private/qsoftkeymanager_s60_p.h" +#include "private/qobject_p.h" +//#include +#include + +#ifndef QT_NO_SOFTKEYMANAGER +QT_BEGIN_NAMESPACE + +const int S60_COMMAND_START = 6000; +const int LSK_POSITION = 0; +const int MSK_POSITION = 3; +const int RSK_POSITION = 2; + +QSoftKeyManagerPrivateS60::QSoftKeyManagerPrivateS60() +{ + cachedCbaIconSize[0] = QSize(0,0); + cachedCbaIconSize[1] = QSize(0,0); + skipNextUpdate = false; +} + +bool QSoftKeyManagerPrivateS60::skipCbaUpdate() +{ + // lets not update softkeys if + // 1. We don't have application panes, i.e. cba + // 2. S60 native dialog or menu is shown + if (QApplication::testAttribute(Qt::AA_S60DontConstructApplicationPanes) || + CCoeEnv::Static()->AppUi()->IsDisplayingMenuOrDialog() || skipNextUpdate) { + skipNextUpdate = false; + return true; + } + return false; +} + +void QSoftKeyManagerPrivateS60::ensureCbaVisibilityAndResponsiviness(CEikButtonGroupContainer &cba) +{ + RDrawableWindow *cbaWindow = cba.DrawableWindow(); + Q_ASSERT_X(cbaWindow, Q_FUNC_INFO, "Native CBA does not have window!"); + // Make sure CBA is visible, i.e. CBA window is on top + cbaWindow->SetOrdinalPosition(0); + // Qt shares same CBA instance between top-level widgets, + // make sure we are not faded by underlying window. + cbaWindow->SetFaded(EFalse, RWindowTreeNode::EFadeIncludeChildren); + // Modal dialogs capture pointer events, but shared cba instance + // shall stay responsive. Raise pointer capture priority to keep + // softkeys responsive in modal dialogs + cbaWindow->SetPointerCapturePriority(1); +} + +void QSoftKeyManagerPrivateS60::clearSoftkeys(CEikButtonGroupContainer &cba) +{ + QT_TRAP_THROWING( + //Using -1 instead of EAknSoftkeyEmpty to avoid flickering. + cba.SetCommandL(0, -1, KNullDesC); + // TODO: Should we clear also middle SK? + cba.SetCommandL(2, -1, KNullDesC); + ); + realSoftKeyActions.clear(); +} + +QString QSoftKeyManagerPrivateS60::softkeyText(QAction &softkeyAction) +{ + // In S60 softkeys and menu items do not support key accelerators (i.e. + // CTRL+X). Therefore, removing the accelerator characters from both softkey + // and menu item texts. + const int underlineShortCut = QApplication::style()->styleHint(QStyle::SH_UnderlineShortcut); + QString iconText = softkeyAction.iconText(); + return underlineShortCut ? softkeyAction.text() : iconText; +} + +QAction *QSoftKeyManagerPrivateS60::highestPrioritySoftkey(QAction::SoftKeyRole role) +{ + QAction *ret = NULL; + // Priority look up is two level + // 1. First widget with softkeys always has highest priority + for (int level = 0; !ret; level++) { + // 2. Highest priority action within widget + QList actions = requestedSoftKeyActions.values(level); + if (actions.isEmpty()) + break; + qSort(actions.begin(), actions.end(), QSoftKeyManagerPrivateS60::actionPriorityMoreThan); + foreach (QAction *action, actions) { + if (action->softKeyRole() == role) { + ret = action; + break; + } + } + } + return ret; +} + +bool QSoftKeyManagerPrivateS60::actionPriorityMoreThan(const QAction *firstItem, const QAction *secondItem) +{ + return firstItem->priority() > secondItem->priority(); +} + +void QSoftKeyManagerPrivateS60::setNativeSoftkey(CEikButtonGroupContainer &cba, + TInt position, TInt command, const TDesC &text) +{ + // Calling SetCommandL causes CBA redraw + QT_TRAP_THROWING(cba.SetCommandL(position, command, text)); +} + +bool QSoftKeyManagerPrivateS60::isOrientationLandscape() +{ + // Hard to believe that there is no public API in S60 to + // get current orientation. This workaround works with currently supported resolutions + return S60->screenHeightInPixels < S60->screenWidthInPixels; +} + +QSize QSoftKeyManagerPrivateS60::cbaIconSize(CEikButtonGroupContainer *cba, int position) +{ + Q_UNUSED(cba); + Q_UNUSED(position); + + // Will be implemented when EikSoftkeyImage usage license wise is OK +/* + const int index = isOrientationLandscape() ? 0 : 1; + if(cachedCbaIconSize[index].isNull()) { + // Only way I figured out to get CBA icon size without RnD SDK, was + // Only way I figured out to get CBA icon size without RnD SDK, was + // to set some dummy icon to CBA first and then ask CBA button CCoeControl::Size() + // The returned value is cached to avoid unnecessary icon setting every time. + const bool left = (position == LSK_POSITION); + if(position == LSK_POSITION || position == RSK_POSITION) { + CEikImage* tmpImage = NULL; + QT_TRAP_THROWING(tmpImage = new (ELeave) CEikImage); + EikSoftkeyImage::SetImage(cba, *tmpImage, left); // Takes myimage ownership + int command = S60_COMMAND_START + position; + setNativeSoftkey(*cba, position, command, KNullDesC()); + cachedCbaIconSize[index] = qt_TSize2QSize(cba->ControlOrNull(command)->Size()); + EikSoftkeyImage::SetLabel(cba, left); + } + } + + return cachedCbaIconSize[index]; +*/ + return QSize(); +} + +bool QSoftKeyManagerPrivateS60::setSoftkeyImage(CEikButtonGroupContainer *cba, + QAction &action, int position) +{ + bool ret = false; + Q_UNUSED(cba); + Q_UNUSED(action); + Q_UNUSED(position); + + // Will be implemented when EikSoftkeyImage usage license wise is OK + /* + const bool left = (position == LSK_POSITION); + if(position == LSK_POSITION || position == RSK_POSITION) { + QIcon icon = action.icon(); + if (!icon.isNull()) { + QPixmap pm = icon.pixmap(cbaIconSize(cba, position)); + pm = pm.scaled(cbaIconSize(cba, position)); + QBitmap mask = pm.mask(); + if (mask.isNull()) { + mask = QBitmap(pm.size()); + mask.fill(Qt::color1); + } + + CFbsBitmap* nBitmap = pm.toSymbianCFbsBitmap(); + CFbsBitmap* nMask = mask.toSymbianCFbsBitmap(); + + CEikImage* myimage = new (ELeave) CEikImage; + myimage->SetPicture( nBitmap, nMask ); // nBitmap and nMask ownership transfered + + EikSoftkeyImage::SetImage(cba, *myimage, left); // Takes myimage ownership + ret = true; + } else { + // Restore softkey to text based + EikSoftkeyImage::SetLabel(cba, left); + } + } + */ + return ret; +} + +bool QSoftKeyManagerPrivateS60::setSoftkey(CEikButtonGroupContainer &cba, + QAction::SoftKeyRole role, int position) +{ + QAction *action = highestPrioritySoftkey(role); + if (action) { + setSoftkeyImage(&cba, *action, position); + QString text = softkeyText(*action); + TPtrC nativeText = qt_QString2TPtrC(text); + int command = S60_COMMAND_START + position; + setNativeSoftkey(cba, position, command, nativeText); + cba.DimCommand(command, !action->isEnabled()); + realSoftKeyActions.insert(command, action); + return true; + } + return false; +} + +bool QSoftKeyManagerPrivateS60::setLeftSoftkey(CEikButtonGroupContainer &cba) +{ + return setSoftkey(cba, QAction::PositiveSoftKey, LSK_POSITION); +} + +bool QSoftKeyManagerPrivateS60::setMiddleSoftkey(CEikButtonGroupContainer &cba) +{ + // Note: In order to get MSK working, application has to have EAknEnableMSK flag set + // Currently it is not possible very easily) + // For more information see: http://wiki.forum.nokia.com/index.php/Middle_softkey_usage + return setSoftkey(cba, QAction::SelectSoftKey, MSK_POSITION); +} + +bool QSoftKeyManagerPrivateS60::setRightSoftkey(CEikButtonGroupContainer &cba) +{ + if (!setSoftkey(cba, QAction::NegativeSoftKey, RSK_POSITION)) { + Qt::WindowType windowType = Qt::Window; + QAction *action = requestedSoftKeyActions.value(0); + if (action) { + QWidget *actionParent = action->parentWidget(); + Q_ASSERT_X(actionParent, Q_FUNC_INFO, "No parent set for softkey action!"); + + QWidget *actionWindow = actionParent->window(); + Q_ASSERT_X(actionWindow, Q_FUNC_INFO, "Softkey action does not have window!"); + windowType = actionWindow->windowType(); + } + + if (windowType != Qt::Dialog && windowType != Qt::Popup) { + QString text(QSoftKeyManager::tr("Exit")); + TPtrC nativeText = qt_QString2TPtrC(text); + setNativeSoftkey(cba, RSK_POSITION, EAknSoftkeyExit, nativeText); + return true; + } + } + return false; +} + +void QSoftKeyManagerPrivateS60::setSoftkeys(CEikButtonGroupContainer &cba) +{ + int requestedSoftkeyCount = requestedSoftKeyActions.count(); + const int maxSoftkeyCount = 2; // TODO: differs based on orientation ans S60 versions (some have MSK) + if (requestedSoftkeyCount > maxSoftkeyCount) { + // We have more softkeys than available slots + // Put highest priority negative action to RSK and Options menu with rest of softkey actions to LSK + // TODO: Build menu + setLeftSoftkey(cba); + if(AknLayoutUtils::MSKEnabled()) + setMiddleSoftkey(cba); + setRightSoftkey(cba); + } else { + // We have less softkeys than available slots + // Put softkeys to request slots based on role + setLeftSoftkey(cba); + if(AknLayoutUtils::MSKEnabled()) + setMiddleSoftkey(cba); + setRightSoftkey(cba); + } +} + +void QSoftKeyManagerPrivateS60::updateSoftKeys_sys() +{ + //bool status = CCoeEnv::Static()->AppUi()->IsDisplayingMenuOrDialog(); + if (skipCbaUpdate()) + return; + + CEikButtonGroupContainer *nativeContainer = S60->buttonGroupContainer(); + Q_ASSERT_X(nativeContainer, Q_FUNC_INFO, "Native CBA does not exist!"); + ensureCbaVisibilityAndResponsiviness(*nativeContainer); + clearSoftkeys(*nativeContainer); + setSoftkeys(*nativeContainer); + + nativeContainer->DrawDeferred(); // 3.1 needs an extra invitation +} + +bool QSoftKeyManagerPrivateS60::handleCommand(int command) +{ + QAction *action = realSoftKeyActions.value(command); + if (action) { + QVariant property = action->property(MENU_ACTION_PROPERTY); + if (property.isValid() && property.toBool()) { + QT_TRAP_THROWING(S60->menuBar()->TryDisplayMenuBarL()); + } else if (action->menu()) { + // TODO: This is hack, in order to use exising QMenuBar implementation for Symbian + // menubar needs to have widget to which it is associated. Since we want to associate + // menubar to action (which is inherited from QObejct), we create and associate QWidget + // to action and pass that for QMenuBar. This associates the menubar to action, and we + // can have own menubar for each action. + QWidget *actionContainer = action->property("_q_action_widget").value(); + if(!actionContainer) { + actionContainer = new QWidget(action->parentWidget()); + QMenuBar *menuBar = new QMenuBar(actionContainer); + foreach(QAction *menuAction, action->menu()->actions()) { + QMenu *menu = menuAction->menu(); + if(menu) + menuBar->addMenu(action->menu()); + else + menuBar->addAction(menuAction); + } + QVariant v; + v.setValue(actionContainer); + action->setProperty("_q_action_widget", v); + } + qt_symbian_next_menu_from_action(actionContainer); + QT_TRAP_THROWING(S60->menuBar()->TryDisplayMenuBarL()); + // TODO: hack remove, it can happen that IsDisplayingMenuOrDialog return false + // in updateSoftKeys_sys, and we will override menu CBA with our own + skipNextUpdate = true; + } else { + Q_ASSERT(action->softKeyRole() != QAction::NoSoftKey); + QWidget *actionParent = action->parentWidget(); + Q_ASSERT_X(actionParent, Q_FUNC_INFO, "No parent set for softkey action!"); + if (actionParent->isEnabled()) { + action->activate(QAction::Trigger); + return true; + } + } + } + return false; +} + +QT_END_NAMESPACE +#endif //QT_NO_SOFTKEYMANAGER diff --git a/src/gui/kernel/qsoftkeymanager_s60_p.h b/src/gui/kernel/qsoftkeymanager_s60_p.h new file mode 100644 index 0000000..46e3596 --- /dev/null +++ b/src/gui/kernel/qsoftkeymanager_s60_p.h @@ -0,0 +1,109 @@ +/**************************************************************************** +** +** 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$ +** +****************************************************************************/ + +#ifndef QSOFTKEYMANAGER_S60_P_H +#define QSOFTKEYMANAGER_S60_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "private/qobject_p.h" +#include "private/qsoftkeymanager_common_p.h" + +QT_BEGIN_HEADER + +#ifndef QT_NO_SOFTKEYMANAGER + +QT_BEGIN_NAMESPACE + +class CEikButtonGroupContainer; +class QAction; + +class QSoftKeyManagerPrivateS60 : public QSoftKeyManagerPrivate +{ + Q_DECLARE_PUBLIC(QSoftKeyManager) + +public: + QSoftKeyManagerPrivateS60(); + +public: + void updateSoftKeys_sys(); + bool handleCommand(int command); + +private: + bool skipCbaUpdate(); + void ensureCbaVisibilityAndResponsiviness(CEikButtonGroupContainer &cba); + void clearSoftkeys(CEikButtonGroupContainer &cba); + QString softkeyText(QAction &softkeyAction); + QAction *highestPrioritySoftkey(QAction::SoftKeyRole role); + static bool actionPriorityMoreThan(const QAction* item1, const QAction* item2); + void setNativeSoftkey(CEikButtonGroupContainer &cba, TInt position, TInt command, const TDesC& text); + bool isOrientationLandscape(); + QSize cbaIconSize(CEikButtonGroupContainer *cba, int position); + bool setSoftkeyImage(CEikButtonGroupContainer *cba, QAction &action, int position); + bool setSoftkey(CEikButtonGroupContainer &cba, QAction::SoftKeyRole role, int position); + bool setLeftSoftkey(CEikButtonGroupContainer &cba); + bool setMiddleSoftkey(CEikButtonGroupContainer &cba); + bool setRightSoftkey(CEikButtonGroupContainer &cba); + void setSoftkeys(CEikButtonGroupContainer &cba); + +private: + QHash realSoftKeyActions; + QSize cachedCbaIconSize[2]; + bool skipNextUpdate; +}; + + +QT_END_NAMESPACE + +#endif //QT_NO_SOFTKEYMANAGER + +QT_END_HEADER + +#endif // QSOFTKEYMANAGER_S60_P_H diff --git a/src/gui/kernel/qt_s60_p.h b/src/gui/kernel/qt_s60_p.h index 1163055..735ca7a 100644 --- a/src/gui/kernel/qt_s60_p.h +++ b/src/gui/kernel/qt_s60_p.h @@ -128,6 +128,7 @@ public: static inline RWindowGroup& windowGroup(); static inline CWsScreenDevice* screenDevice(); static inline CCoeAppUi* appUi(); + static inline CEikMenuBar* menuBar(); #ifdef Q_WS_S60 static inline CEikStatusPane* statusPane(); static inline CCoeControl* statusPaneSubPane(TInt aPaneId); @@ -270,6 +271,11 @@ inline CCoeAppUi* QS60Data::appUi() return CCoeEnv::Static()-> AppUi(); } +inline CEikMenuBar* QS60Data::menuBar() +{ + return CEikonEnv::Static()->AppUiFactory()->MenuBar(); +} + #ifdef Q_WS_S60 inline CEikStatusPane* QS60Data::statusPane() { diff --git a/src/gui/widgets/qmainwindow.cpp b/src/gui/widgets/qmainwindow.cpp index 1622191..269cd12 100644 --- a/src/gui/widgets/qmainwindow.cpp +++ b/src/gui/widgets/qmainwindow.cpp @@ -119,8 +119,6 @@ void QMainWindowPrivate::init() q->setAttribute(Qt::WA_Hover); #ifdef QT_SOFTKEYS_ENABLED menuBarAction = QSoftKeyManager::createAction(QSoftKeyManager::MenuSoftKey, q); - menuBarAction->setObjectName(QLatin1String("_q_menuSoftKeyAction")); - menuBarAction->setVisible(false); #endif } diff --git a/src/gui/widgets/qmenu_p.h b/src/gui/widgets/qmenu_p.h index b7272f7..aaed6b1 100644 --- a/src/gui/widgets/qmenu_p.h +++ b/src/gui/widgets/qmenu_p.h @@ -71,6 +71,7 @@ QT_BEGIN_NAMESPACE #ifndef QT_NO_MENU #ifdef Q_WS_S60 +void qt_symbian_next_menu_from_action(QWidget* actionContainer); void qt_symbian_show_toplevel(CEikMenuPane* menuPane); void qt_symbian_show_submenu(CEikMenuPane* menuPane, int id); #endif // Q_WS_S60 @@ -87,7 +88,7 @@ QT_BEGIN_NAMESPACE typedef void NSMenuItem; # endif //__OBJC__ struct QMacMenuAction { - QMacMenuAction() + QMacMenuAction() #ifndef QT_MAC_USE_COCOA : command(0) #else @@ -124,7 +125,7 @@ typedef QList QMenuMergeList; #ifdef Q_WS_WINCE struct QWceMenuAction { - uint command; + uint command; QPointer action; HMENU menuHandle; QWceMenuAction() : menuHandle(0), command(0) {} @@ -340,7 +341,7 @@ public: QList actionItems; HMENU menuHandle; QWceMenuPrivate(); - ~QWceMenuPrivate(); + ~QWceMenuPrivate(); void addAction(QAction *, QWceMenuAction* =0); void addAction(QWceMenuAction *, QWceMenuAction* =0); void syncAction(QWceMenuAction *); diff --git a/src/gui/widgets/qmenu_symbian.cpp b/src/gui/widgets/qmenu_symbian.cpp index 28b27d4..eae97a6 100644 --- a/src/gui/widgets/qmenu_symbian.cpp +++ b/src/gui/widgets/qmenu_symbian.cpp @@ -81,6 +81,7 @@ static QList nativeMenuBars; static uint qt_symbian_menu_static_cmd_id = QT_SYMBIAN_FIRST_MENU_ITEM; static QPointer widgetWithContextMenu; static QList contextMenuActionList; +static QWidget* actionMenu = NULL; static int contexMenuCommand=0; bool menuExists() @@ -224,8 +225,26 @@ static void rebuildMenu() } #ifdef Q_WS_S60 +void qt_symbian_next_menu_from_action(QWidget *actionContainer) +{ + actionMenu = actionContainer; +} + void qt_symbian_show_toplevel( CEikMenuPane* menuPane) { + if (actionMenu) { + QMenuBarPrivate *mb = 0; + mb = menubars()->value(actionMenu); + qt_symbian_menu_static_cmd_id = QT_SYMBIAN_FIRST_MENU_ITEM; + deleteAll( &symbianMenus ); + Q_ASSERT(mb); + mb->symbian_menubar->rebuild(); + for (int i = 0; i < symbianMenus.count(); ++i) + QT_TRAP_THROWING(menuPane->AddMenuItemL(symbianMenus.at(i)->menuItemData)); + actionMenu = NULL; + return; + } + if (!menuExists()) return; rebuildMenu(); @@ -271,10 +290,16 @@ int QMenuBarPrivate::symbianCommands(int command) void QMenuBarPrivate::symbianCreateMenuBar(QWidget *parent) { Q_Q(QMenuBar); - if (parent && parent->isWindow()){ - menubars()->insert(q->window(), this); - symbian_menubar = new QSymbianMenuBarPrivate(this); - nativeMenuBars.append(q); + if (parent) { + if(parent->isWindow()) { + menubars()->insert(q->window(), this); + symbian_menubar = new QSymbianMenuBarPrivate(this); + nativeMenuBars.append(q); + } else { + menubars()->insert(q->parentWidget(), this); + symbian_menubar = new QSymbianMenuBarPrivate(this); + nativeMenuBars.append(q); + } } } @@ -284,6 +309,7 @@ void QMenuBarPrivate::symbianDestroyMenuBar() int index = nativeMenuBars.indexOf(q); nativeMenuBars.removeAt(index); menubars()->remove(q->window(), this); + menubars()->remove(q->parentWidget(), this); rebuildMenu(); if (symbian_menubar) delete symbian_menubar; diff --git a/src/gui/widgets/qmenubar.cpp b/src/gui/widgets/qmenubar.cpp index 0e14385..9caadb7 100644 --- a/src/gui/widgets/qmenubar.cpp +++ b/src/gui/widgets/qmenubar.cpp @@ -667,7 +667,7 @@ void QMenuBar::initStyleOption(QStyleOptionMenuItem *option, const QAction *acti \i Application Menu | About \i The application name is fetched from the \c {Info.plist} file (see note below). If this entry is not found no About item - will appear in the Application Menu. + will appear in the Application Menu. \row \i config, options, setup, settings or preferences \i Application Menu | Preferences \i If this entry is not found the Settings item will be disabled -- cgit v0.12 From 787a20b76b7f6e0dd6c7a6331220b46b5eddff79 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 3 Feb 2010 12:17:55 +0100 Subject: revert to fromUtf16() usage in fromWCharArray() this is a public function, so changing its semantics is no option. in fact, it broke qmake on windows (for symbian-abld and wince50smart). Reviewed-by: joerg --- src/corelib/tools/qstring.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp index 3388500..3ef0e66 100644 --- a/src/corelib/tools/qstring.cpp +++ b/src/corelib/tools/qstring.cpp @@ -885,7 +885,7 @@ int QString::grow(int size) QString QString::fromWCharArray(const wchar_t *string, int size) { if (sizeof(wchar_t) == sizeof(QChar)) { - return QString((const QChar *)string, size); + return fromUtf16((const ushort *)string, size); } else { return fromUcs4((uint *)string, size); } -- cgit v0.12 From ca57a6e6bb48b468631576c3bd316f6c2b24e0dd Mon Sep 17 00:00:00 2001 From: Alessandro Portale Date: Wed, 3 Feb 2010 14:07:35 +0100 Subject: Compile fix for non-Symbian compilers Putting the code for "case CT_ComboBox:" into {} --- src/gui/styles/qs60style.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp index fc435e8..9025e5b 100644 --- a/src/gui/styles/qs60style.cpp +++ b/src/gui/styles/qs60style.cpp @@ -2399,13 +2399,14 @@ QSize QS60Style::sizeFromContents(ContentsType ct, const QStyleOption *opt, sz.setHeight(sz.height() + 2 * pixelMetric(PM_FocusFrameVMargin)); break; #ifndef QT_NO_COMBOBOX - case CT_ComboBox: - // Fixing Ui design issues with too wide QComboBoxes and greedy SizeHints - // Make sure, that the combobox says within the screen. - const QSize desktopContentSize = QApplication::desktop()->availableGeometry().size() - -QSize(pixelMetric(PM_LayoutLeftMargin) + pixelMetric(PM_LayoutRightMargin), 0); - sz = QCommonStyle::sizeFromContents(ct, opt, csz, widget). - boundedTo(desktopContentSize); + case CT_ComboBox: { + // Fixing Ui design issues with too wide QComboBoxes and greedy SizeHints + // Make sure, that the combobox says within the screen. + const QSize desktopContentSize = QApplication::desktop()->availableGeometry().size() + -QSize(pixelMetric(PM_LayoutLeftMargin) + pixelMetric(PM_LayoutRightMargin), 0); + sz = QCommonStyle::sizeFromContents(ct, opt, csz, widget). + boundedTo(desktopContentSize); + } break; #endif default: -- cgit v0.12 From 14ee2007fd2ada46e5fe30af838f5a7fcb7c6f4d Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Wed, 3 Feb 2010 15:39:43 +0000 Subject: Corrected namespace for Phonon::MMF translatable error strings Error strings are now part of the Phonon::MMF namespace. Reviewed-by: trustme --- src/3rdparty/phonon/mmf/utils.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/3rdparty/phonon/mmf/utils.h b/src/3rdparty/phonon/mmf/utils.h index 56ccafc..acad55a 100644 --- a/src/3rdparty/phonon/mmf/utils.h +++ b/src/3rdparty/phonon/mmf/utils.h @@ -44,7 +44,7 @@ enum PanicCode { class Utils { - Q_DECLARE_TR_FUNCTIONS(Utils) + Q_DECLARE_TR_FUNCTIONS(Phonon::MMF) public: /** -- cgit v0.12 From 4b059682ddba4a1fb90c656d7d829680779a2e60 Mon Sep 17 00:00:00 2001 From: Gareth Stockwell Date: Wed, 3 Feb 2010 15:52:14 +0000 Subject: Added descriptions of translatable strings for Phonon MMF reverb effect Reviewed-by: trustme --- src/3rdparty/phonon/mmf/environmentalreverb.cpp | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/3rdparty/phonon/mmf/environmentalreverb.cpp b/src/3rdparty/phonon/mmf/environmentalreverb.cpp index 89f8d60..4a6ce29 100644 --- a/src/3rdparty/phonon/mmf/environmentalreverb.cpp +++ b/src/3rdparty/phonon/mmf/environmentalreverb.cpp @@ -140,55 +140,75 @@ bool EnvironmentalReverb::getParameters(CMdaAudioOutputStream *stream, TUint32 umin, umax; // DecayHFRatio + // Ratio of high-frequency decay time to the value specified by + // DecayTime. effect->DecayHFRatioRange(umin, umax); parameters.append(createParameter( DecayHFRatio, tr("Decay HF ratio (%)"), effect->DecayHFRatio(), umin, umax)); // DecayTime + // Time over which reverberation is diminished. effect->DecayTimeRange(umin, umax); parameters.append(createParameter( DecayTime, tr("Decay time (ms)"), effect->DecayTime(), umin, umax)); // Density + // Delay between first and subsequent reflections. + // Note that the S60 platform documentation does not make clear + // the distinction between this value and the Diffusion value. parameters.append(createParameter( Density, tr("Density (%)"), effect->Density(), 0, 100)); // Diffusion + // Delay between first and subsequent reflections. + // Note that the S60 platform documentation does not make clear + // the distinction between this value and the Density value. parameters.append(createParameter( Diffusion, tr("Diffusion (%)"), effect->Diffusion(), 0, 100)); // ReflectionsDelay + // Amount of delay between the arrival the direct path from the + // source and the arrival of the first reflection. parameters.append(createParameter( ReflectionsDelay, tr("Reflections delay (ms)"), effect->ReflectionsDelay(), 0, effect->ReflectionsDelayMax())); // ReflectionsLevel - effect->ReflectionLevelRange(min, max); + // Amplitude of reflections. This value is corrected by the RoomLevel + // to give the final reflection amplitude. + effect->ReflectionLevelRange(min, max); parameters.append(createParameter( ReflectionsLevel, tr("Reflections level (mB)"), effect->ReflectionsLevel(), min, max, EffectParameter::LogarithmicHint)); // ReverbDelay + // Amount of time between arrival of the first reflection and start of + // the late reverberation. parameters.append(createParameter( ReverbDelay, tr("Reverb delay (ms)"), effect->ReverbDelay(), 0, effect->ReverbDelayMax())); // ReverbLevel + // Amplitude of reverberations. This value is corrected by the + // RoomLevel to give the final reverberation amplitude. effect->ReverbLevelRange(min, max); parameters.append(createParameter( ReverbLevel, tr("Reverb level (mB)"), effect->ReverbLevel(), min, max, EffectParameter::LogarithmicHint)); // RoomHFLevel + // Amplitude of low-pass filter used to attenuate the high frequency + // component of reflected sound. effect->RoomHFLevelRange(min, max); parameters.append(createParameter( RoomHFLevel, tr("Room HF level"), effect->RoomHFLevel(), min, max)); // RoomLevel + // Master volume control for all reflected sound. effect->RoomLevelRange(min, max); parameters.append(createParameter( RoomLevel, tr("Room level (mB)"), effect->RoomLevel(), -- cgit v0.12 From afae62256897a8ed14e3156df33838082c6d4b98 Mon Sep 17 00:00:00 2001 From: Iain Date: Thu, 5 Nov 2009 13:16:41 +0100 Subject: Adjust rw base address for gui built with GCCE for Symbian OS fixed during merge to match new style flag setting. Reviewed-by: Janne Koskinen --- src/gui/gui.pro | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gui/gui.pro b/src/gui/gui.pro index 4215f97..8ad3bac 100644 --- a/src/gui/gui.pro +++ b/src/gui/gui.pro @@ -54,4 +54,5 @@ DEFINES += Q_INTERNAL_QAPP_SRC symbian:TARGET.UID3=0x2001B2DD # ro-section in gui can exceed default allocated space, so more rw-section little further -symbian-sbsv2: QMAKE_LFLAGS.ARMCC += --rw-base 0x800000" +symbian-sbsv2: QMAKE_LFLAGS.ARMCC += --rw-base 0x800000 +symbian: QMAKE_LFLAGS.GCCE += -Tdata 0xC00000 -- cgit v0.12 From 9962e2d96a212c518054220167eb6f61e1052bcc Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 3 Feb 2010 20:25:38 +0100 Subject: Autotest: to be sure, generate .cpp files with the proper headers too --- tests/auto/qscriptvalue/testgen/gen.py | 57 ++++++++++++++++++++++++---------- 1 file changed, 40 insertions(+), 17 deletions(-) diff --git a/tests/auto/qscriptvalue/testgen/gen.py b/tests/auto/qscriptvalue/testgen/gen.py index c14fe86..7161e6b 100755 --- a/tests/auto/qscriptvalue/testgen/gen.py +++ b/tests/auto/qscriptvalue/testgen/gen.py @@ -71,23 +71,46 @@ class Options(): mainTempl = Template("""/* - Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ +/**************************************************************************** +** +** 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 test suite 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$ +** +****************************************************************************/ //////////////////////////////////////////////////////////////// // THIS FILE IS AUTOGENERATED, ALL MODIFICATIONS WILL BE LAST // -- cgit v0.12 From 264f4451667e7da90e63cf87a2b4a6eb72a14d3b Mon Sep 17 00:00:00 2001 From: Rhys Weatherley Date: Thu, 4 Feb 2010 15:02:41 +1000 Subject: Rhys Weatherley's changes for 4.6.2 --- dist/changes-4.6.2 | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/dist/changes-4.6.2 b/dist/changes-4.6.2 index d768988..00509ed 100644 --- a/dist/changes-4.6.2 +++ b/dist/changes-4.6.2 @@ -67,8 +67,13 @@ QtNetwork QtOpenGL -------- - - foo - * bar + - [QTBUG-7490] Better support for user-generated binary shaders. + +QtOpenVG +-------- + + - [QTBUG-7791] Optimize single-rect IntersectClip in OpenVG using the scissor. + - [QTBUG-7864] Use OpenVG scissor on 90/180/270 rotations and simple clips. QtScript -------- -- cgit v0.12