summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup reference counting in QDateTimePrivate class.Jedrzej Nowacki2011-07-121-3/+2
| | | | | | | | | | It is better to use QSharedData which is a common interface for ref counting. Change-Id: I990476d6763901bf383f241bce16fe26665b021c Reviewed-on: http://codereview.qt.nokia.com/1439 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
* remove unneeded cast operator on QConstStringDataLars Knoll2011-07-121-3/+0
| | | | | | | Change-Id: Ib5f090cd6c716e1d936894be206b78629e70137b Reviewed-on: http://codereview.qt.nokia.com/1487 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
* Remove #ifdef for platforms where QChar was packed -- there aren't anyThiago Macieira2011-07-111-4/+0
| | | | | | | | | | | | On ARM OABI, sizeof(QChar) was 4, so we used to pack it so QChar[] was isomorphic to ushort[]. We don't support the OABI anymore and the EABI does the right thing. Change-Id: I181dd2f169f6868450302e269ef9ad5d643f306f Merge-request: 13 Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com> Reviewed-on: http://codereview.qt.nokia.com/1386 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
* Remove Qt 4.3 binary compatibility for MSVCThiago Macieira2011-07-115-49/+0
| | | | | | | | | | | | | | | When we removed the useless "const" in the return type, we broke compatibility with a few compilers that include the return type in the mangling. We don't need that anymore in Qt 5. This change should have had a ### Qt5 mark everywhere, not just in a comment in qstring.cpp. Change-Id: I8839f8dc540b34e57a3efdb160a1c015f7328422 Merge-request: 13 Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com> Reviewed-on: http://codereview.qt.nokia.com/1385 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
* Use lambdas for generating static data for QStringLiteralThiago Macieira2011-07-111-26/+33
| | | | | | | | | | | This means it will work on C++0x compilers that support lambdas (all of them once they've completed supporting the functionality). Olivier had the idea and the initial code. Change-Id: I11ef7da4058ed18f4ea99ada070891a68ed54f55 Reviewed-on: http://codereview.qt.nokia.com/1380 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
* Remove the qs() macro.Olivier Goffart2011-07-081-4/+0
| | | | | | | | | | | There is tootoo many risks of conflicts with existing code. QStringLiteral is not that hard to type. And if users want to use qs they can still define it in their own headers. Change-Id: I7da4772d902033fa163f5177c012b5d0e87332d7 Reviewed-on: http://codereview.qt.nokia.com/1357 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Use memmove in QListData::append(int) as regions overlap.Thiago Macieira2011-07-081-1/+1
| | | | | | | | | It's undefined behaviour to memcpy regions with overlapping area. You have to use memmove. Change-Id: I912c819bf7ab26ba1e60028ee9d7c833dfc5138a Reviewed-on: http://codereview.qt.nokia.com/1355 Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
* Add support for QStringLiterals in QStringBuilderThiago Macieira2011-07-081-0/+17
| | | | | | | | | | | Otherwise we get errors for failing to have operator+ properly when writing: QStringLiteral("foo") + s Change-Id: I03844c95e9fdfa886eadfa2b5fe104ff048fd618 Reviewed-on: http://codereview.qt.nokia.com/1351 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Make the new QStringLiteral produce a non-temporaryThiago Macieira2011-07-081-10/+33
| | | | | | | | | | | | | | | | | This is currently GCC-only code (the __extension ({ }) stuff), but it was the only way I found to create a static variable and return it. I had to add the QConstStringDataPtr container because I had to return a pointer to the data -- it's impossible to return a reference through this extension. I could have returned a naked pointer directly too. This isn't complete. GCC 4.6 is placing the string in the .data section, not .rodata as we wanted. Investigating further. Change-Id: I170030dca3eddbd69f6c879e952f652f7fe5d958 Reviewed-on: http://codereview.qt.nokia.com/1350 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Bugfix the QConstString implementation.Thiago Macieira2011-07-081-2/+2
| | | | | | | Change-Id: Ic9ea9d91c1a976962a3881ecdf7ad178de768b08 Reviewed-on: http://codereview.qt.nokia.com/1349 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Unify QLatin1String and QLatin1LiteralLars Knoll2011-07-074-123/+57
| | | | | | | | | | | | | Unify the two classes and get rid of one TODO item for Qt 5. Using strlen in the constructor of QLatin1String works, as the compiler can do the calculation at compile time. Change-Id: I59d98c71a34b86d4211fa0d8cfd40b7d612c5a78 Reviewed-on: http://codereview.qt.nokia.com/1219 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
* Support for compile time generated QStringsLars Knoll2011-07-072-282/+287
| | | | | | | | | | | | | | | | | | | | | | | | | | use with QString string(QStringLiteral("foo")) or QString string(qs("foo")). qs(...) can in almost all places replace QLatin1String. the Macro qs requires c++0x support or a compiler where sizeof(wchar_t) == 2. In case these conditions are not met, qs simply falls back to QLatin1String. The commit also cleans up the QStringData structure significantly, now using only 16 bytes for the header on 32 bit systems. The bitflags to store unicode directionality of the string and whether the string would require complex text processing to render are removed. They don't really belong here and the result can be calculated very fast in any case. Added an internal QRefCount class the encapsulates the reference counting semantics required where a negative refcount is never changed. This is required to be able to put the string data into a constant POD object. Change-Id: I5b1395213deca48b2d582a036a0e8a8358d26d14 Reviewed-on: http://codereview.qt.nokia.com/1218 Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Add an internal QRefCount class to QtCoreLars Knoll2011-07-073-0/+145
| | | | | | | | | | | The class will be used by QString and possibly other container classes to allow for the Data objects to be created at compile time in read-only memory. Change-Id: I9c7538bc97df637cc920e6e5ef23d67a93abac0d Reviewed-on: http://codereview.qt.nokia.com/1216 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
* Fix compilation with c++0x modeLars Knoll2011-07-061-1/+1
| | | | | | | Change-Id: Ie4f157f25c31e46d4cc7cb628b8605b99561a4e8 Reviewed-on: http://codereview.qt.nokia.com/1220 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
* Fix QScopedPointerarray default constructorOlivier Goffart2011-07-051-1/+3
| | | | | | | | | | | | | | Since the compiler cannod find the template argument if there is no argument passed to the constructor, this effectively means there is no default constructor. Add a default constructor Task-number: QTBUG-20256 Change-Id: I310d5e1f3f94a8fe69fd3a5c46f2f51bca60facd Reviewed-on: http://codereview.qt.nokia.com/1165 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* remove QT3_SUPPORT from corelib/toolsLars Knoll2011-06-2911-346/+0
| | | | | | | Change-Id: Ie224cf992be675c7d405d4be05e4acd4157e590e Reviewed-on: http://codereview.qt.nokia.com/863 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Liang Qi <liang.qi@nokia.com>
* Remove Qt3 support functionality from parts of QtCoreLars Knoll2011-06-292-211/+14
| | | | | | | Change-Id: I90f391e9bfc412087bd0401e28d2497571f81aa1 Reviewed-on: http://codereview.qt.nokia.com/825 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Liang Qi <liang.qi@nokia.com>
* QStringBuilder: do not crash with null char*Olivier Goffart2011-06-272-0/+4
| | | | | | | | | This is supported by the others operator+ Change-Id: I9a1d1a0afb63acf32935948111d43ca6da370363 Reviewed-on: http://codereview.qt.nokia.com/764 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: hjk <qthjk@ovi.com>
* Make QPoint have the same layout on all platformsGunnar Sletta2011-06-201-6/+0
| | | | | | | Change-Id: I8330295761a4440afd81c121039237fb651d9a9c Reviewed-on: http://codereview.qt.nokia.com/487 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Install some headers that were previously missing from install.axis2011-06-031-0/+4
| | | | | | | | Change-Id: I58a5f58e6e03e3e266de23beee47de0c823f3240 Task: QTBUG-19585 Reviewed-on: http://codereview.qt.nokia.com/233 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* Fix a regression in QList::mid()Liang Qi2011-05-271-0/+2
| | | | | | | | | | | | It doesn't need to copy anything when pos is after size(). Task-number: QTBUG-19164 Reviewed-by: Oswald Buddenhagen (cherry picked from commit 8befc4982a32752e48c82cacbed045e7336a3569) Change-Id: Iccac75842616f0d41e457e844a15d1a3ccfeb642 Reviewed-on: http://codereview.qt.nokia.com/164 Reviewed-by: Liang Qi <liang.qi@nokia.com>
* Update licenseheader text in source files for qtbase Qt moduleJyri Tahtela2011-05-24108-1787/+1787
| | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* Doc: Fixed qdoc warnings.David Boddie2011-05-231-0/+2
|
* Doc: Fixed qdoc warnings.David Boddie2011-05-232-2/+3
|
* Doc: Applied pending fixes to API documentation.David Boddie2011-05-238-13/+45
|
* QT_USE_QSTRINGBUILDER to fix source compatibilityOlivier Goffart2011-05-184-20/+15
| | | | | | | | | | | | In 4.8 we added support for using StringBuilder with QByteArray. But this is breaking source compatibility for people that used QT_USE_FAST_OPERATOR_PLUS in Qt 4.7. So we introduce a new macro Notice that QT_USE_FAST_CONCATENATION was not working without QT_USE_FAST_OPERATOR_PLUS, so we remove the checking of that macro. Reviewed-by: joao (cherry picked from commit 8447f5616be731d78081f326bb9cb3f5aa9087a4)
* Removed deprecated functions in QListEckhart Koppen2011-05-131-91/+0
| | | | | Removed detach, detach2, detach3 and append which were marked as required only up to 4.5.x
* Compile fix for QLocale on Symbian.Denis Dzyubenko2011-05-101-1/+1
| | | | | | | | The previous change added new ELangEnglish_India that doesn't necesserally present in all SDKs. Reviewed-by: trustme (cherry picked from commit 154ab1cb4c4cdf34f21fc93b078f91cc79048bd4)
* Added Kazakh language to the QLocale mapping table on Symbian.Denis Dzyubenko2011-05-101-0/+1
| | | | | Reviewed-by: trustme (cherry picked from commit c6808af66d45541546b30c8e6de155b9812b4ef9)
* Added support for QLocale::uiLanguages on Symbian.Denis Dzyubenko2011-05-101-70/+96
| | | | | | | | | Extended the mapping table that matches symbian device languages to a locale name and language code. Task-number: QTBUG-7329 Reviewed-by: trustme (cherry picked from commit 93233fc811920002d5b5b8272d9b5b8d5d3e2b98)
* Don't realloc user-provided bufferJoão Abecasis2011-05-101-2/+2
| | | | | | | | When QTextBoundaryFinder doesn't own the buffer, don't realloc it and get a new one instead. Reviewed-by: Ritt Konstantin (cherry picked from commit 320f172c851a4720299297c8b3b757eb1202c568)
* Revert "Added QStringRef::toLatin1 and QStringRef::toUtf8"Thorbjørn Lindeijer2011-05-102-43/+0
| | | | | | | This reverts commit feabda665de62a0f6a82d831b45926697f30b45b. They were already added by Denis Dzyubenko in commit 2916b074. (cherry picked from commit ffe0a2ec7c1f4412792a977401bdc4dbf6c76acd)
* Fixes warningsOlivier Goffart2011-05-102-4/+2
| | | | | | | | | | | In QString, it would comlain that: assuming signed overflow does not occur when assuming that (X - c) > X is always false Changing to unsigned comparison fix the warning Others are about unused variables Reviewed-by: Thiago (cherry picked from commit 5e5485809e8c6f8339bb9f19ad71ed623a8b23c7)
* Added QStringRef::toLatin1 and QStringRef::toUtf8Thorbjørn Lindeijer2011-05-102-0/+43
| | | | | | | | | | | | | | | | | | | | | | | These helper functions make it convenient to avoid making an unnecessary copy of the string before converting it to a QByteArray. The current most obvious way to do this would be: // QStringRef text QByteArray latin1 = text.toString().toLatin1(); Though the copy can also be avoided by doing: const QString textData = QString::fromRawData(text.unicode(), text.size()); QByteArray latin1 = textData.toLatin1(); Now the faster method can be achieved using the new obvious way: QByteArray latin1 = text.toLatin1(); Reviewed-by: Thiago Macieira Reviewed-by: Robin Burchell (cherry picked from commit feabda665de62a0f6a82d831b45926697f30b45b)
* Update documentation of QDateTime::toStringJens Georg2011-05-101-1/+5
| | | | | | Merge-request: 1149 Reviewed-by: Zeno Albisser <zeno.albisser@nokia.com> (cherry picked from commit 3d4149afe62b4fc5d519a2a155b8f8c32e7e95c4)
* Fix QDateTime::toString for Qt::ISODateJens Georg2011-05-101-0/+15
| | | | | | | | Fixes QTBUG-18290 and the "missing Z" from QTBUG-9698 Merge-request: 1149 Reviewed-by: Zeno Albisser <zeno.albisser@nokia.com> (cherry picked from commit 8f95a19d330480bd86650c3d2e4e147d3bca5789)
* Symbian's QElapsedTimer::restart() fixed to return ms rather than usmread2011-05-101-1/+1
| | | | | | | | | Symbian's QElapsedTimer::restart() had accidently been changed to return a microsecond count rather than milliseconds, when the elapsed timer resolution was increased. This fixes it back to milliseconds. Reviewed-by: Shane Kearns (cherry picked from commit 39202973e3fb7ff37033290b29efa1b9edc674fb)
* Respect capacity in QVector::append().Liang Qi2011-05-101-2/+3
| | | | | | | | | | | Fix a bug in QVector::append(), it should use the capacity for new size, when it is implicit shared and capacity is bigger than the new size. Autotest included. Task-number: QTBUG-11763 Reviewed-by: joao Reviewed-by: Olivier Goffart
* Initial import from the monolithic Qt.Qt by Nokia2011-04-27109-0/+96312
This is the beginning of revision history for this module. If you want to look at revision history older than this, please refer to the Qt Git wiki for how to use Git history grafting. At the time of writing, this wiki is located here: http://qt.gitorious.org/qt/pages/GitIntroductionWithQt If you have already performed the grafting and you don't see any history beyond this commit, try running "git log" with the "--follow" argument. Branched from the monolithic repo, Qt master branch, at commit 896db169ea224deb96c59ce8af800d019de63f12