summaryrefslogtreecommitdiffstats
path: root/src/corelib
Commit message (Collapse)AuthorAgeFilesLines
* Bring qmetaobjectbuilder in sync with mocKent Hansen2012-02-032-1/+4
| | | | | | | | | | | | | | | | | | | qmetaobjectbuilder should generate meta-objects of the same version as moc; in the future, when the moc version is bumped, QMOB has to be adapted at the same time. QMOB was generating version 4 meta-objects. This patch makes it generate version 6 (the current version). This also fixes a bug with using qt_static_metacall with QMOB (setStaticMetacallFunction()); it was already using the version 6 qt_static_metacall signature, which isn't compatible with version 4. Also add tests that ensure that the QMOB-generated meta-object works with real objects; in particular we want to test the codepaths in Qt that check for version >= 4. Change-Id: I64a151ea5c947a6f8b7a00e85a39866446c735e9 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Fix compilation on MinGW.Friedemann Kleint2012-02-031-1/+3
| | | | | | | | | | | - Add missing constant. - Make FontKey a pair instead of a function-local type which cannot be used as template parameter for gcc. - Fix warnings about redefinition of NOMINMAX and enumeration. Change-Id: Ie3eb6e5b8dd9cd81210d6e10270ada0158aaf809 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Fix a typo TypeDefiniton -> TypeDefinition.Jędrzej Nowacki2012-02-032-32/+32
| | | | | | | | If you repeat a typo often enough, it becomes the right spelling. But 49 times is definitely not enough :-) Change-Id: I7c0bb29e68e4bff5c67277f9874df8b3ab8b2b54 Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
* Include qatomic_cxx11.h for C++11 compilersBradley T. Hughes2012-02-031-1/+1
| | | | | | | qatomic_cxx0x.h doesn't exist. Change-Id: Iac654ecf09a1b890d25fa23625c8c43f2f7f1ecf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove empty src/corelib/arch subdirectoriesBradley T. Hughes2012-02-034-12/+0
| | | | | | | | | | The bfin, integrity, s390, and sh4a directories included an empty arch.pri, which is not necessary. Remove these directories and arch.pri files. Change-Id: I016dcef63e4b9fb4c14cc1fa7b9b91cba2080dbb Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove src/corelib/arch/nacl/* and qatomic_nacl.hBradley T. Hughes2012-02-034-258/+0
| | | | | | | | | | This implementation uses the GCC __sync_* intrinsics, which we do not need to duplicate after commit 2bbd2262b3974fb4e39341a23e40ffdf1655ebe9 (which added qatomic_gcc.h). Change-Id: I59b6e4a03e83f58f4145a5ab2bfd635fe9ab686f Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove src/corelib/arch/ia64/*Bradley T. Hughes2012-02-032-78/+0
| | | | | | | | | The out-of-line q_atomic_test_and_set_(int|ptr) functions are no longer declared after commit 1955353149781a064bc053b86be6e221b159d4ee. They appear to have never been used either. Remove them. Change-Id: Ia8dfa1f585f2370091b4fd93aaf98cb10241bf31 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove src/corelib/arch/i386/* and src/corelib/arch/x86_64/*Bradley T. Hughes2012-02-036-303/+2
| | | | | | | | We do not want to support out-of-line QAtomic* implementations. Remove these from the i386 and x86_64 implementations. Change-Id: Ib6a9614b7b11bf6bccc9054b177357afd83e33e6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove src/corelib/arch/avr32/* and qatomic_avr32.hBradley T. Hughes2012-02-034-258/+0
| | | | | | | | | This implementation uses the GCC __sync_* intrinsics, which we do not need to duplicate after commit 2bbd2262b3974fb4e39341a23e40ffdf1655ebe9 (which added qatomic_gcc.h). Change-Id: I2cab86deacad1c37f17f0c5836d9faf2ad366495 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove src/corelib/arch/mips/*Bradley T. Hughes2012-02-033-296/+0
| | | | | | | | | Commit 99fb1bea49c4de5cf3143af59f8c96a92980e58f removed the use of the old, out-of-line q_atomic_* implementation. Remove these functions from the library. Change-Id: I0b239bf779e0545cb5558862e3a40f6e95fdcbd9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove src/corelib/arch/arm/*Bradley T. Hughes2012-02-032-76/+0
| | | | | | | | | After commit dc5388e79b71d796c1207681235cf007c39810bd, which removed support for non-EABI, qt_atomic_yield() and q_atomic_lock are no longer used. Remove them. Change-Id: I0f405ae63d7903c222fc2b829887207885be0a03 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove #include "qatomic_macosx.h"Bradley T. Hughes2012-02-031-2/+0
| | | | | | | This file was removed in commit 68e5fd9ebc8a3f510e3144e981a0cb358945fb9c Change-Id: I76671f79432204c28ffa7488871d0eef07cc8dca Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix QAbstractItemModel documentationGiuseppe D'Angelo2012-02-031-0/+1
| | | | | | | | Commit 20abd88e711a2dfcbe07925f8902faa45e5110e2 refactored the supportedDragActions methods, this oneliner adds the necessary \fn. Change-Id: I373b039138e1cbfe0f28a0aa9eb3b65245f2132d Reviewed-by: David Faure <david.faure@kdab.com>
* Add support for QNX iconv implementationRafael Roquetto2012-02-032-0/+6
| | | | | | | | | | | QNX implements the POSIX version of iconv (with non-const function signatures). However, it is still necessary to link with libiconv, unlike most cases. Also, its iconv_open does not know how to handle an empty string. Change-Id: I8654703e46b9c64503aca5521ce7fae1c97d7968 Reviewed-by: Mark Brand <mabrand@mabrand.nl> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Rename qatomic_windows.h to qatomic_msvc.hBradley T. Hughes2012-02-036-76/+9
| | | | | | | | | | The QT_ARCH_WINDOWS(CE) define(s) aren't used to control which header to include anymore, so just remove it. We also do not need the empty src/corelib/arch/windows/arch.pri. Change-Id: I5400fc852af31907e533d0278540b8cd3da391cb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Reimplement QIdentityProxyModel::headerData().Sergio Martins2012-02-032-0/+10
| | | | | | | | The one in the base class is slower due to parent<->source mappings. Change-Id: Ib0b337ef5d4b5b8cd9f6e1d7c5c19a770b53e0e8 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Build with QT_NO_CAST_FROM_BYTEARRAYStephen Kelly2012-02-021-2/+2
| | | | | Change-Id: Ibb79e372a3adf90c9f982f50ab711066063eff4a Reviewed-by: David Faure <faure@kde.org>
* Various documentation fixes ported from Qt 4.8Teemu Katajisto2012-02-023-3/+3
| | | | | | | | | | | | | | | Selected fixes for qtbase from 4.8 commit 3826203f744a2147bebf5f088de0d524156f59fd Task-number: QTBUG-9466 Task-number: QTBUG-7924 Task-number: QTBUG-20355 Task-number: QTBUG-19367 Task-number: QTBUG-14554 Change-Id: I551251dd8a87d7dd837e5927050ffd14bce9a97c Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Move QString <-> NSString conversion to QtCoreMorten Johan Sorvig2012-02-024-0/+66
| | | | | | | | | | | | | | | | Add (private) API to QCFString: static QString toQString(NSString *) static NSString *toNSString(const QString &) Add implementation to qcore_mac_objc.mm. Keep the mac_cpp since it's used for building qmake as well as bootstrapping. Replace usage of NSString conversion functions in the cocoa and corewlan plugin with QCFString. Change-Id: I9f34edd5231255aef9d8d6e9a60306174bb279b3 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Fix QString::operator=(QLatin1String) for substringsKent Hansen2012-02-021-1/+1
| | | | | | | | | QLatin1String now has a constructor that takes explicit length, which makes it possible to create a QLatin1String that isn't null-terminated. Made QString::operator=(QLatin1String) work in that case. Change-Id: Ie77eabd2f8f036531d67cd8051a7b6305b386ccf Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix QTextStream and QDebug operator<< for QLatin1StringKent Hansen2012-02-023-1/+17
| | | | | | | | | QLatin1String now has a constructor that takes explicit length, which makes it possible to create a QLatin1String that isn't null-terminated. Made the QTextStream and QDebug << operators work in that case. Change-Id: I94d051ce2ebfb2d2a403b96d25e040c80a54bf7c Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix QString(QLatin1String) constructor for substringsKent Hansen2012-02-021-1/+1
| | | | | | | | | QLatin1String now has a constructor that takes explicit length, which makes it possible to create a QLatin1String that isn't null-terminated. Made the QString(QLatin1String) constructor work in that case. Change-Id: I4f4f07a956144b7ea4aa9c58a61c755fb99ef1b3 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix operator==(QLatin1String, QLatin1String) and friends for substringsKent Hansen2012-02-021-6/+10
| | | | | | | | | QLatin1String now has a constructor that takes explicit length, which makes it possible to create a QLatin1String that isn't null-terminated. Made the QLatin1String comparison operators work in that case. Change-Id: I234ba851e67a6f5cfbb46fb6f0b22623ce40be28 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Port the Windows atomic implementation to use QGenericAtomicOpsBradley T. Hughes2012-02-023-237/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | | First, we do not need to have the QT_INTERLOCKED_REMOVE_VOLATILE(a) macro anymore either, since the value stored in QBasicAtomicInteger is not volatile. Windows provides Interlocked*Pointer() functions in some configurations, so we provide a partial specialization of QAtomicOps for pointer types. For integer types, QAtomicOps selects an implementation based on the size of the type. At the moment, we only support 32-bit types, but it will be possible to add 64-bit later. Note that the 32-bit specialization of QAtomicOpsBySize declares the Type typedef as long, not int, since the Windows Interlocked*() API takes parameters as longs and long pointers. Since this typedef differs from the type given to QBasicAtomicInteger<T> by the QBasicAtomicInt typedef, we need to templatise the _q_value parameter separately from the other arguments in QGenericAtomicOps. This templatisation would be necessary to port other architectures, such as PA_RISC, where we need to have an int[4] array in the atomic type while the arguments do not need this array. Change-Id: Id71fa1ae334da2023553cb402b45e6c285f1d344 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: João Abecasis <joao.abecasis@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Avoid duplicating flags/types in qmetaobjectbuilderKent Hansen2012-02-021-57/+3
| | | | | | | | | | | Presumably the contents from qmetaobject_p.h were copied because qmetaobjectbuilder originally lived outside of qtbase, and private headers could not be included from other modules. But now we can just include the right headers. Change-Id: I975df1ea94455f1bf0db1d8024de8f5379fc9fc7 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Lorn Potter <lorn.potter@nokia.com>
* Fix some warnings from clangLars Knoll2012-02-023-5/+5
| | | | | | | | | One of them was a real error, that could lead to Data::alloc containing wrong values. Change-Id: I48315ef6fd59188630107ebbe7bf8dbaa5da689e Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Trivial fix in qjsonobject.h for -Werror=shadowJani Uusi-Rantala2012-02-021-2/+2
| | | | | | | | | | There was a few errors coming from other components using qtbase - error: declaration of 'o' shadows a member of 'this' [-Werror=shadow]. Change-Id: Ib394f404370f001e68fde8b424cd5fff527d8fe7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* qabstractitemmodel.cpp: Fix warnings.Friedemann Kleint2012-02-011-0/+5
| | | | | | Change-Id: I10ef89e2fab31c7f1c9ac67b2234f509fb3f28ab Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Use QBasicMutex instead of Q_GLOBAL_STATIC QMutexOlivier Goffart2012-02-015-29/+26
| | | | | | | | | | | | | | QBasicMutex is a POD and can be used as a static global object. in qpicture.cpp factoryLoader is used only once, and under the mutex, so there is no need for Q_GLOBAL_STATIC for it, it can be a function static in qhostinfo_unix.cpp the code seemed wrong while compiled with namespace and QT_NO_GETADDRINFO. I also could get rid of one include because it was included earlier. Change-Id: I3c700203c3e067266c20733f4bda8031446dbb86 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Fix parsingMode not used anymore, detected by compiler warningDavid Faure2012-02-011-2/+3
| | | | | | | | This came from replacing d->parsingMode with parsingMode when moving the method to the Private class. Change-Id: I5a025ea1128dacda97d265d401a329dbbbfb0ff7 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Added WindowOverridesSystemGesturesHint to our window flags.Gunnar Sletta2012-02-012-0/+5
| | | | | Change-Id: I42c3d3e5ef71960d16f85969b66380999fb15922 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Windows: Fix inclusion of <windows.h>Friedemann Kleint2012-02-0135-128/+95
| | | | | | | | | | | | | - Always use <qt_windows.h> as the last file to be included. - Remove it from some headers, use Qt::HANDLE instead of HANDLE. - Clean up #ifdef, use Q_OS_WIN for Windows/Windows CE. - Add NOMINMAX to qt_windows.h to avoid problems with the min/max macros. - Remove <windows.h> from qplatformdefs.h (VS2005) Change-Id: Ic44e2cb3eafce38e1ad645c3bf85745439398e50 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Revert "Put the generated <module>version.h into build tree"Bradley T. Hughes2012-02-011-1/+1
| | | | | | | | | After discussion with Liang, I'm reverting it as he requested. This change put every header into the SYNCQT.HEADER_FILES twice for in-source builds, and the qtMODULEversion.h header did not include a path component. This reverts commit 2fbc45b58bba860abf67fb28aa1319c9f4ededaf Change-Id: Ie84cef19193ce5e49072f1f67a41140d9d2673b8 Reviewed-by: Liang Qi <liang.qi@nokia.com>
* QtDebug: Include file, line, function informationKai Koehne2012-02-017-124/+417
| | | | | | | | | | | | | | Record the file, line, and function where a qDebug, qWarning, qCritical or qFatal call happens, and make this information available in a custom message handler. The patch uses the C preprocessor to replace qDebug, qWarning, ... with a line that also records the current file, line, and function. Custom message handlers can access this information via a new QMessageLogContext argument. Change-Id: I0a9b89c1d137e41775932d3b1a35da4ebf12d18d Reviewed-by: David Faure <faure@kde.org>
* Add the event loop quitlock feature to QtCore.Stephen Kelly2012-01-316-12/+239
| | | | | | | | | | | | | | | | A feature of a ref-counted quit (managed by a quit-lock class) is added to both QEventLoop and QCoreApplication. This allows, for example, an event loop to quit() when there is no more work for it to do. quitOnLastWindowClosed is implemented in terms of the refcount in QCoreApplication so that jobs can be completed before the application quits. Change-Id: I14c8f4e7ee12bbf81a6e5849290d4c8ff37fa110 Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* QDir::NoDotAndDotDot is now QDir::NoDot|QDir::NoDotDot.Jonas M. Gastal2012-01-313-4/+1
| | | | | | Change-Id: I8ef7782258c2ec02ad2ec2a5d5cab90f53c62aa3 Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Allow function types to be registered without workaroundsJoão Abecasis2012-01-312-6/+6
| | | | | | | | | | | | | | | | | Commit 4b8ceb41aed352f10d36db5284453f425dbc5f3f added the requirement that pointed-to types need to be registered when registering pointer types. Unfortunately, the implementation also affects function pointer types. This change whitelists 0, 1, 2 and 3 argument functions as not deriving from QObject, forgoing the need to workaround details of the type registration implementation when registering those function pointer types. Change-Id: I4d855e9d70a8179a6e31b84623ad5bf063e0d6d8 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Remove many deprecated methodsLars Knoll2012-01-317-49/+6
| | | | | | | | | | Remove methods that have been marked as deprecated before Qt 4.6. Keep others, but inline them where possible and mark them as QT_DEPRECATED_SINCE(5, 0). Change-Id: If881821ae095f054b31cc13464f19e2007c20ed7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
* MinGW build fixes for QWindowsPipeReader and friendsJoerg Bornemann2012-01-313-3/+6
| | | | | Change-Id: Ie4d6017c6fb918e7796d1a5e8863e9368e4e1894 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Windows: Fix compilation with -qtnamespaceKai Koehne2012-01-311-3/+3
| | | | | Change-Id: Ib006d74299d65e5872a5a524eaa937e127306ec7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* mkdtemp() support for QNX platformRafael Roquetto2012-01-311-0/+36
| | | | | | Change-Id: I30feebbbcdbe065e899a048da20ac887d4d48a4f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: David Faure <david.faure@kdab.com>
* Remove non existant features from qfeature.hLars Knoll2012-01-312-540/+54
| | | | | | | | | This doesn't clean it all up, but at least removes things that are clearly gone from Qt. We still have way too many individual feature switches. Change-Id: I7926ee8cf72567a86257f1e7b0d852f11ff5f4bb Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Update contact address in license headers.Jason McDonald2012-01-3116-16/+16
| | | | | Change-Id: I35bf916087511f26bfeb49ceb3256d9a20fbc1c0 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* QDateTime: Add validity checksJohn Layt2012-01-311-32/+144
| | | | | | | Check the validity of date/time before attempting to perform maths. Change-Id: Ia6a2caf07c6c36f7d7fac713a77bc4eb456c6ed6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QDateTime: Deprecate setYMD()John Layt2012-01-312-9/+8
| | | | | | Change-Id: I077332df554fb750666d51486c97724411276679 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix bugs when using a non 0 terminated QLatin1StringLars Knoll2012-01-301-20/+41
| | | | | | | | | | A few methods in QString still assumed that QLatin1String is always 0 terminated. Change this to rely on the size provided by QLatin1String instead. Change-Id: I9145a46e52ed8811f3b4e3d72d8a81a12588760a Reviewed-by: Kevin Simons <kevin.simons@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add a null pointer check to QJsonObject::toVariantMapLars Knoll2012-01-301-3/+5
| | | | | | | | | | If the object is null, simply return an empty variant map. Added another test case checking conversion from QJsonArray to a QVariantList. Change-Id: Ieccd163e76630f7db7f41255acd9d1baf66bb38d Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Kevin Simons <kevin.simons@nokia.com>
* Remove Symbian specific code from QtCore.Xizhi Zhu2012-01-3037-1112/+63
| | | | | Change-Id: I131303e28a12dccb96de3de4ca0073b389a9bbae Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Remove type id/name conversion for QVariant::UserTypeKent Hansen2012-01-301-4/+0
| | | | | | | | | | | | | QVariant::UserType does not correspond to an actual type named "UserType". This logic didn't make sense. Change-Id: I369911e514f7902fc863cb05174011d6fc15c447 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: João Abecasis <joao.abecasis@nokia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Avoid non-standard indentation of license headers.Jason McDonald2012-01-301-39/+39
| | | | | | | | The strange indentation has made maintenance of license headers difficult on several occasions. Change-Id: Ib29a7e5275e2c7a2c13a3f32fd2479f34d3353ca Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>