summaryrefslogtreecommitdiffstats
path: root/src/corelib
Commit message (Collapse)AuthorAgeFilesLines
* Remove Q_UNUSED for the metaObject.Stephen Kelly2012-07-191-2/+0
| | | | | | | | | The object is no longer unused. Change-Id: Ia82539220855321f2986c5791b70be5df399baca Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
* fix "No such ..." doc error for QString::toHtmlEscapedJeremy Katz2012-07-191-1/+1
| | | | | | | And a minor rephrase. [...] a HTML -> an HTML Change-Id: I49804d009737b58ca3bb43e60dac869e045b5536 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* fix "No such ..." in qmarginsJeremy Katz2012-07-191-2/+2
| | | | | | | | | Is it more appropriate to rename the parameter in question "margin", as suggested by the documentation, or have the documentation refer to "m", as suggested by the code? Change-Id: I5768ef044164e099ef1db77adda42171799cbf12 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* fix "No such ..." doc error for Qt::WindowType WindowOverridesSystemGesturesJeremy Katz2012-07-191-1/+1
| | | | | | | Is this a typo in the documentation, or in the enum? Change-Id: I58ba12d74694b26ec0bf76226b56337a12e0756e Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* fix "No such ..." error in qnamespace.qdocJeremy Katz2012-07-191-3/+0
| | | | | | | | RIP Qt::ClipOperation UniteClip See 01b72952c38b9193138eabdab6bdab632cd75ebd for details Change-Id: I8cfd5f6d008374741bea4f6a85827545ddb8ae86 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* fix "No such ..." doc error for QMetaType::typeName()Jeremy Katz2012-07-191-1/+1
| | | | | Change-Id: If00c728ec793a65f62d76d8301c7f6658e7af8a0 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* fix "No such ..." in doc for QMetaEnum::keysToValue()Jeremy Katz2012-07-191-1/+1
| | | | | Change-Id: I4cc15031970a34ee1076933f7f13468ee17abcfd Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* fix "No such ..." doc error in QBasicTimer::start()Jeremy Katz2012-07-191-1/+1
| | | | | Change-Id: I52feb5f2ebcc8821470468fc51ed3acc6df92a67 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* fix "No such ..." for QMimaeDatabase::mimeTypeForFile()Jeremy Katz2012-07-191-1/+1
| | | | | Change-Id: Ife8e361524ac324ce2cfb20d952db5be042fecc1 Reviewed-by: David Faure <faure@kde.org>
* fix "No such ..." for QObject::connect(...,functor) docJeremy Katz2012-07-191-2/+2
| | | | | Change-Id: Idd1d871b0fde899fdd21ce5aa365e08e2c7bcf45 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* fix "No such ..." documentation errors in QAbstractItemModelJeremy Katz2012-07-191-3/+3
| | | | | Change-Id: Ic1d0761c310c47f95d98988d77aff0f8e46de5fb Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* qmetaobject_p.h: don't (incorrectly) fwd-declare QVarLengthArrayMarc Mutz2012-07-182-2/+1
| | | | | | | | | | qmetaobject_p.h forward-declared QVarLengthArray without the default parameter for the 'int' template argument. This violates the ODR, so just #include the header instead. It's not like there's much point in the fwd declaration in a private header. Change-Id: Ie5ef1740c57da396c95f5bae1cd81ac941a8ac2d Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Make the QIncompatibleFlag constexpr.Stephen Kelly2012-07-181-3/+3
| | | | | | Change-Id: If99b43b45cc667449dbe7c487b56885c6ce9b1c7 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Windows: Do not return short path names for QDir::tempPath().Friedemann Kleint2012-07-171-1/+11
| | | | | | | | WinAPI GetTempPath() sometimes returns short names for C:/Users/<user>/AppData/Local/Temp. Change-Id: I33f991acc06e652ccd484d36a5a384eb776f8395 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Typo in QWaitCondition::wait() doc: lcokedReadWriteLockJeremy Katz2012-07-171-1/+1
| | | | | | | lcokedReadWriteLock -> lockedReadWriteLock Change-Id: I560f7445d6a0c332ee8ca8f62a8318f637567520 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Correct documentation for Void metatype value, define UnknownTypeJeremy Katz2012-07-171-1/+2
| | | | | | | | QMetaType::Type::Void was misdocumented as being equal to 0. The actual value for Void is currently 43. UnknownType is 0. Change-Id: I4e9cb3b4d21e10e1691b985a6ad635bc7a04f1b7 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Add new metatypes to QMetaType::Type enum for docsJeremy Katz2012-07-171-0/+3
| | | | | | | | This adds QRegularExpression, QJson{Value,Object,Array,Document}, and SChar Change-Id: I3dbe9d197952e980f0de9eaed2605d190b8d0405 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Remove Qt3Support enums for q{dir,filedevice,settings,variant} in docsJeremy Katz2012-07-174-11/+0
| | | | | | Change-Id: I07942447bb756561e5c502c9a0c03b6aaf8133d1 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Remove documentation of previously deleted Accessibility eventsJeremy Katz2012-07-171-3/+0
| | | | | | Change-Id: I7996f2f9b6d11cea130e2a56d0997e1f208e5642 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Remove documentation of Qt3Support enums in qcoreevent.cppJeremy Katz2012-07-171-7/+0
| | | | | | Change-Id: Id8740adaa26ee44f40010373947a5be82942b0ba Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Normalize signal/slots.Sergio Martins2012-07-171-52/+52
| | | | | | Change-Id: I0a0f497ece081a430437adc2959deb247defcde9 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QStateMachine: mark a ctor as explicitMarc Mutz2012-07-161-1/+1
| | | | | | | | Commit 0b66f723f06f6d115ea37d4db8bb6c0b5f63885b recently introduced a new QStateMachine constructor, but failed to mark it as explicit. Fix. Change-Id: I16037691ad77d528bb50b611c03063b17a71dd34 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* undocument enums as part of Qt3Support removalJeremy Katz2012-07-161-124/+1
| | | | | | | | | Lots of enums in the Qt namespace used to be hidden or documented as obsolete. These have been removed entirely, as they result in qdoc errors. Change-Id: I67726d7358f4e71a0c8fc5181388b1cf8fd4e4bd Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Add gui/ to qtcore.qdocconf to pick up enums in Qt namespaceJeremy Katz2012-07-161-1/+2
| | | | | | | | | Qt::HitTestAccuracy and Qt::WhiteSpaceMode are defined in gui/ but documented as part of the Qt namespace, so qdoc needs to look there to find the relevant enums. Change-Id: I36ae71c44024b12664688129044994926160e5c9 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Undocument Qt::AnchorAttributeJeremy Katz2012-07-161-12/+0
| | | | | | | AnchorAttribute was removed as part of the Qt3Support cleanup. Change-Id: I58d8e471d4bc1af420ec8eaab6d34c1718b30382 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Fix applicationName() being empty in QApplication.David Faure2012-07-161-1/+1
| | | | | | | | | | | | | | | A virtual method was reimplemented to return an always-empty string, probably a leftover from a refactoring. This fix showed that tst_qwidget_window was buggy: between Qt4 and Qt5, a "Before" became "After", which made "Before" unused, and was masking the fact that the app name was empty by default. In addition, the earlier Qt5 change that made the app name default to argv[0] now requires updating this test, now that it's actually working. Change-Id: I5360026821a9b95bedd0ff09dba3d51a22e542b7 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
* statemachine: Move RestorePolicy enum to QState classKent Hansen2012-07-165-44/+42
| | | | | | | | | | This makes it possible to add API for setting the restore policy per state, or even per property assignment (QTBUG-17861). This change is fully source compatible with Qt4. Change-Id: I53628546b070f6fc84891f86e7ad7bd8ef5ba285 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Add QStateMachine constructor that takes a ChildModeKent Hansen2012-07-162-0/+15
| | | | | | | | | | | | Back when QStateMachine was changed to inherit QState, this constructor was conveniently left out because setting the state machine (root state) to be a parallel state group didn't actually work. But as of commit d281aa6936ad01e28dacabb41bd9eb59891f85a1, it does work, so add the missing constructor. Task-number: QTBUG-15430 Change-Id: I68c599baa0ef1bfc869195140cf5daf645e75b8b Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Only create the Qt5::WinMain target if it doesn't exist yet.Stephen Kelly2012-07-131-11/+13
| | | | | | | | Multiple calls to find_package(Qt5Core) would otherwise attempt to create multiple targets of the same name. Change-Id: I5639671fec66d4dd62dcce018dea5d18dcfd3dc3 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* statemachine: Micro-optimization for signal transition connectKent Hansen2012-07-131-4/+4
| | | | | | | | | | It's silly to call one virtual function plus one function that walks the inheritance chain, on every signal transition connect and disconnect, when the method offset of the internal QSignalEventGenerator class cannot change. Change-Id: Ic4e83bdc6ab445ea8ca00f3d8da3031250621e2f Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Use new Qt5 api for obtaining method parameter typesKent Hansen2012-07-131-3/+2
| | | | | | | This is much faster than the string-based api. Change-Id: Id7ba76aee3346dd90412ec5c8505329360aae937 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Make signal transition registration thread-safeKent Hansen2012-07-132-0/+11
| | | | | | | | Since Qt's connections are thread-safe, QStateMachine's plumbing around them should be thread-safe too. Change-Id: I8ae91c2edc2d32ca4ed4258b71e5da22de30ed91 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Fix signal transition handling in multi-threaded setupKent Hansen2012-07-131-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By default, QStateMachine lazily registers signal transitions (i.e., connects to the signal) when the transition's source state is entered. The connections are established in Qt::AutoConnection mode, which means that if the sender object lives in a different thread, the signal processing will be queued. But if a sender object's signal is used in an out-going transition of the target state of the queued transition, it's possible that a second signal emission on the sender object's thread will be "missed" by the state machine; before the machine gets around to processing the first queued emission (and registering the transitions of the new state), a sender object on the other thread could have emitted a new signal. The solution employed here is to eagerly register any signal transition whose sender object is on a different thread; that is, register it regardless of whether the transition's source state is active. Conversely, when a machine's transitions are unregistered (i.e., because the machine finished), signal transitions with sender objects on other threads should be left as-is, in case the machine will be run again. This doesn't solve the case where the sender object is moved to a different thread _after_ the transition has been initialized. Theoretically, we could catch that by installing an event filter on every sender object and handle the ThreadChange events, but that would be very expensive, and likely useless in most cases. So let's just say that that case isn't supported for now. Task-number: QTBUG-19789 Change-Id: Ibc87bfbf2ed83217ac61ae9401fe4f179ef26c24 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Small refactoring of transition registrationKent Hansen2012-07-135-14/+46
| | | | | | | | | | | | | | Split the guts of registerTransitions() into a registerTransition() function. This allows a particular transition to be registered, instead of walking the source state's whole list of transitions every time. Move the logic for determining whether a transition should be registered to the state machine, since that's also where the actual registration takes place. Change-Id: I0496dee9454cd77b62cf2768942a82a96b320744 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Fix dynamic transition registration edge casesKent Hansen2012-07-132-0/+3
| | | | | | | | | | | | Some of the transition constructors didn't call the maybeRegister() function, causing the transitions to be ignored if they were created when the state machine was running and the transition's source state was active. Added tests that cover all possible cases. Change-Id: If1b593b127bd719e3be4e5a2e6949a780c4e97c3 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Avoid warning when setting up signal transitionKent Hansen2012-07-131-0/+2
| | | | | | | | | | If the sender object was set, but not the signal signature, the registration would proceed anyway, producing a strange warning like QSignalTransition: no such signal: MyObject:: Change-Id: If0b113bdb60dd770d60b0d38d509b673e9d8c5eb Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Set correct signal index when signal is non-normalizedKent Hansen2012-07-131-0/+1
| | | | | | | | | | | | The originalSignalIndex member was not set if the signature had to be normalized. This caused the SignalEvent passed to onTransition() to report a signal index of -1. Improve the signal transition tests so they check both the event passed to eventTest() and onTransition(). Change-Id: I5331fd1944d53310b6d11eb2fd8713b80faa53a1 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* doc/snippets: normalize signals/slotsMarc Mutz2012-07-131-2/+2
| | | | | | | | | | | | | There's one in corelib that has a comment // slower due to signature normalization at runtime I obviously didn't change that one. This is the result of running util/normalize --modify from Qt 4.7 with manual review. Change-Id: I0ffb2305800a9cb746b7f8a4eb710702d64f1b92 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Make it possible to connect to QAbstract{State,Transtion} private signals.Stephen Kelly2012-07-134-10/+16
| | | | | | | Use the same trick as used for private signals in the models. Change-Id: I4235788490cae0e3d554565621d145652dc5b0ca Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Make it possible to use new syntax to connect to model signals.Stephen Kelly2012-07-132-31/+83
| | | | | | | | | The private signals can not be used as function pointers, as required by the new syntax, so we introduce a parameter which can only be created privately. Change-Id: I3d7bb8a163e764d685e8007cba831fb77e3c6855 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Create a way to inform moc about private signals.Stephen Kelly2012-07-131-1/+2
| | | | | | | | | | | | | | | | | | Moc checks for the use of the QPrivateSignal struct, which is part of the Q_OBJECT macro and is private to each class that uses it. Moc then generates a name of the signal which does not include the private struct, and generates code to invoke such signals with an instance of the private struct. This way we can mark private signals as such and prevent them from being emitted from subclasses or from outside of the class entirely. The drawback to this is that it only works if the private signal has no default arguments. However, at least in Qt, there are no such signals. Change-Id: Id16eadaa8d3c36a2c3b265077877f3e1d8304c84 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* statemachine: Fix state entry bug for parallel state groupsKent Hansen2012-07-122-23/+37
| | | | | | | | | | | | | | | | | | The SCXML spec had a bug that would cause the initial state of a compound state within a parallel state group to be entered even if the transition specified another (non-initial) state of the compound state as its target. This only happened if the transition had multiple target states. The bug has been fixed in recent revisions of the SCXML spec. This commit implements the fix, which is to walk the ancestors of the transition's target states only after all the target states themselves have been added, so that the default initial states are correctly overridden/ignored. Task-number: QTBUG-25958 Change-Id: Iac532047678c483a4a3996e24dacf30e00f6bbe0 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Move invariant code out of loop bodyKent Hansen2012-07-121-6/+6
| | | | | | | | | The lca variable doesn't change inside the loop. Comparing our implementation to the algorithm in the SCXML spec reveals that this check should indeed be done outside the loop. Change-Id: I5e9824758fd147766e975d107a73561bd7f5a190 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Enable modularization of translation files.Jan-Arve Saether2012-07-122-18/+61
| | | | | | | | | | | | | | | | | This is accomplished by introducing dependencies to catalogs. This requires one API change: QTranslator::load(const uchar *, int); changes to QTranslator::load(const uchar*, int len, const QString &directory = QString()); Since now, even the load from memory might need a directory if the memory block contains a qm file with dependencies. Change-Id: I781f333d07f53bb431d0a7b5fa1abe282dc4d338 Task-number: QTBUG-26138 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* remove QT_NO_SIGNALMAPPER from featuresTasuku Suzuki2012-07-124-16/+0
| | | | | | | QSignalMapper is a small and extremely low-level interface. Change-Id: I7e799673c6fe559178739fbc58385141ae3f0789 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* android: fix build mistake from earlier mkspec namingRobin Burchell2012-07-121-1/+1
| | | | | Change-Id: I48d9f097e3177f9e2f558845e531f4e438035586 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Fix static plugin loading.Thiago Macieira2012-07-121-4/+11
| | | | | | | | | | | | The QFactoryLoader::indexOf and keyMap functions expect to receive the metadata that contains a "MetaData" entry, instead of the entry itself. Also, QFactoryLoader::metaData() skips static plugins with the wrong IID, so we need to skip it too in QFactoryLoader::instance(). Change-Id: I8a453087feb88d0e8d1021054353f3600d5100a5 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* Write qHash functions for QDate, QTime and QDateTime.Mitch Curtis2012-07-122-0/+41
| | | | | | | | These functions didn't exist - this patch implements them. Task-number: QTBUG-23079 Change-Id: I9eb6e238531d5cda878f5f2cdd27bab30aa60669 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add unary operator+ to QPoint and QPointF.Mitch Curtis2012-07-122-0/+26
| | | | | | | | | | | | | As requested by Winfried Schenke: "QPoint should have an unary operator+ (the unary operator- exists). Classes with arithmetic operators should provide a complete set of operators, because some template code relies on it." Task-number: QTBUG-22913 Change-Id: Ib0c5105975f56c15f00bb48d83c8d911f5a204ac Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Put the ICU libraries in LIBS_PRIVATEThiago Macieira2012-07-111-2/+2
| | | | | | | | We don't expose ICU in our public API, so there's no need for end-user applications to be forced to link to ICU. Change-Id: Ie7a1cef205b9859be4c6b21f486392d192cf6063 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>