Commit Graph

1058 Commits (ce9d760d59c3cd0c5de0325366f50cd1ec7cc5a0)

Author SHA1 Message Date
Friedemann Kleint 7efda762da Fix loading of the ICU dynamic libraries on Windows.
- Account for differing library name on Windows.
- Improve error messages.

Acked-by: John Layt <jlayt@kde.org>

Change-Id: Ib567f8c79ab4b5655cdb2fe050f91013e9305263
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
2012-03-24 15:10:00 +01:00
Thiago Macieira d13c254bef Whitespace fix for brace in qstring.cpp
Change-Id: Ia6cf0d2babd931c9ac2a441a9cfec35f2297dddb
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-03-23 00:44:10 +01:00
Thiago Macieira 18b26d1fbf Quick optimisations to QString: no const-ref for QLatin1XXX
Change-Id: I2c96adc6ae451f085024464791e53739b2d38bab
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-03-23 00:44:03 +01:00
Robin Burchell 69033cbf65 Use the same ifdef-based debugging as the other engines.
Just so I have a similar workflow all over the place.

Change-Id: I99df5042eac1b4fbf3613f339e8a4522f94ed1f5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-03-23 00:43:46 +01:00
Lars Knoll 5b6741c39a Make QLocalePrivate::updateSystemLocale() reset the locale data on Unix
Reread the environment, and update the locale data on request.

Also fix a small bug where the time format wasn't inherited from
the LANG environment variable if LC_TIME wasn't set.

Change-Id: I619447603ade19d5587b427491cfd9c8fe814858
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-03-22 20:59:27 +01:00
Thiago Macieira 8df589bebc Make QLocale not depend on being friends with the global static
Don't assume that the global static is a function. Instead, create a
class that is friends.

Change-Id: I992f4d819b367899b19d95b4983e6b243f0ed932
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-03-22 20:59:27 +01:00
Thiago Macieira 79d0cae448 Add qpair.h to the HEADERS list
Change-Id: I81d078a80b2fba201da9440e3550c2b73adaf668
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-03-22 18:59:45 +01:00
Thiago Macieira 8466d091ae Remove the false information that IA-64 supports SSE2
This must have been a mistake. IA-64 processors used to contain an
IA-32 core, which supported SSE2. However, the IA-64 mode supported no
such thing.

Change-Id: I731c6018166af6b897cb697c68aad4ef3ae93132
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-03-22 18:59:45 +01:00
Oswald Buddenhagen 8d28fba3ed support relative Sysroot specification in qt.conf
permits relocatable qmake installations in, say, $sysroot/hosttools/.
note that it makes patently no sense to have a relative Prefix when
using a relative Sysroot.

Change-Id: I36e5149acb20a885c3cd244bc9d67aa48b01a56f
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-03-22 18:59:45 +01:00
Oswald Buddenhagen a985fa5c51 make unspecified/empty HostPrefix fall back to Prefix
this is needed for backwards-compatibility, and generally makes sense.

Task-number: QTBUG-24839
Change-Id: I42b008a9dfb43cc2ebe49c8baa2c29f5d6a75897
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-03-22 18:59:45 +01:00
David Faure 3b2ccf1277 QStandardPaths: implement displayName() on all platforms.
It was only implemented on Mac OSX until now (all this came from the
QDesktopServices code).

Change-Id: I7fd81d80ca77cf0ca6c213f59813a6163abe7dc5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-03-22 18:59:45 +01:00
Lars Knoll 349c0de091 Significantly speed up insertion into QJsonObject/Array
The code was only allocating memory for the next insertion
leading to a reallocation of the whole data for every
single insertion.

The code now reserves some space and uses a decent growth
strategy to avoid repeated reallocs.

Change-Id: I48b0feab71ba8ca73e7037f8460080f198b2f009
Reviewed-by: Jamey Hicks <jamey.hicks@nokia.com>
2012-03-22 18:59:45 +01:00
Pekka Vuorela 7e90df7bf5 FocusAboutToChange event to be send before focus changes
Focus change happen as: FocusAboutToChange event -> focus change
-> FocusOut event -> FocusIn event.

Input method need to have focus when calling commit(). Notification
on focus about to be lost allows QWindow implementations to commit in
time.

Also changes QWidget documentation to match code reality.

Change-Id: I17a8a374a33dd700909f79e370b42348869261a6
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2012-03-22 16:13:21 +01:00
David Faure f89bf2c153 Make comment() work in the C locale too.
The parser makes the default language en_US, and no mimetype xml says
<comment xml:lang="C">, so use the en_US string for the C locale,
rather than returning an empty string.

Change-Id: Iad7c142e8078abe357773249416e7ce9b3e29a92
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-03-22 13:29:50 +01:00
David Faure 5ec5ce3549 Return all expected paths in QStandardPaths::standardLocations
ApplicationsLocation and DataLocation were returning only the local path,
rather than system paths + local path.

Change-Id: I653d14e5bbe1e08c5fa1ecd5a6106336d1cd0369
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-03-22 13:29:27 +01:00
Kai Koehne 3f3dd8f1d3 Show correct origin of Q_ASSERT in Windows dialog
Display the actual file and line where the Q_ASSERT statement
was triggered.

Change-Id: I54d72f4c4bd9edee744c0f6e08f31b8e3120f454
Reviewed-by: David Faure <faure@kde.org>
2012-03-22 08:51:48 +01:00
Robin Burchell 0f9e98a586 Fix directories never being unwatched after deletion on Windows.
This causes all sorts of problems, but is also blocking the introduction of new,
more detailed signals, because the backend never correctly identified the removal.

The object handle appears to be woken up before the directory is actually
deleted, thus causing QFileInfo::exists() to return true, and not doing the
removal dance. This behaviour isn't exactly documented (as far as I was able to
find out), but also seems to happen consistently, and Chromium also contains
a comment noting a similar issue.

Task-number: QTBUG-2331
Change-Id: Icfb6219b78e688852d7863a666a0ffc31bb4d573
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-03-21 12:32:16 +01:00
Oswald Buddenhagen 18ddad191e permit explicitly empty qt.conf entries
this allows expressing "no SettingsPath" cleanly, and makes the
internals cleaner.

this is marginally behavior-incompatible in that if somebody had Prefix
or Data set to an empty string (rather than a dot, which is hinted at by
the documentation and commanded by common sense), he would have gotten
the binary's directory resp. Prefix, while now it will be just empty.

Change-Id: I3c11cc4e8671ffb604d4889389764a9ba9c2e7e6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-03-21 11:49:10 +01:00
sh kim d1fb20943d Add IDENTITYPROXYMODEL feature
Change-Id: Ic92165b2ab06e5b5f733bfaf2f7fe908861c0efa
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-03-19 20:16:04 +01:00
Jędrzej Nowacki 25cf5dabbe Fix a memory leak in template QMetaObject::Connection.
QObject::QSlotObjectBase instance given as argument to
QObject::connectImpl was not dereferenced in case of an unsuccessful
connection.

Change-Id: I206b14e986690c027aafc2593762d85dc619e0e6
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-03-19 11:53:07 +01:00
Debao Zhang 78e0ab3342 QPointer: update its document and changes-5.0.0
QPointer has been un-deprecated and one behavior which slightly different
from Qt4 has been fixed.
see SHA: b8773165d7
and SHA: 497622cafe

Change-Id: I4bae2cce3ebfebd8f59b18b5a6a7a7226b8353b9
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2012-03-18 03:55:07 +01:00
Lincoln Ramsay 7f67d0810e Don't reject plugins that have empty meta-data
Having an empty Json object ({}) should be valid meta-data but this
check means that there needs to be at least one key-value pair or
the plugin will be rejected.

Change-Id: I578ccc35016af16fd30b3807e796fa63c0282f30
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-03-17 17:53:00 +01:00
Marc Mutz d823646db3 containers: add C++11-style c{begin,end}() as alias for const{Begin,End}()
C++11 adds cbegin()/cend() functions for the same reason Qt has
constBegin()/constEnd(). This patch adds these functions to the
Qt containers with the same implementation as constBegin()/constEnd().

It also fixes the return types in the documentation of existing
constFind() functions (documentation only).

C++11 only adds cbegin()/cend() (and crbegin()/crend(), which Qt doesn't have).
In particular, it doesn't add cfind(), so I didn't supply these, even though
Qt comes with constFind().

This is a forward-port of https://qt.gitorious.org/qt/qt/merge_requests/1365.

Change-Id: Ida086b64246b24e25254eafbcb06c8e33388502b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-03-17 09:10:57 +01:00
Wolf-Michael Bolle 389f2a076d Removed move constructor.
All C++-2011-specific constructors, operators and methods may be inline
only in Qt. Since an implementation in the header file does not seem to
be possible for QMimeType without breaking backward compatiblity the
move constructor has to disappear altogether.

See also the discussion at
http://codereview.qt-project.org/#change,19150

Change-Id: If07347a51a1ae5bd4c2d292dac835592ede4b370
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-03-16 10:42:40 +01:00
Giuseppe D'Angelo 9b0f381f2a QRegularExpression: various documentation improvements/fixes
Change-Id: I683afb24f888ab6cf3c543fba8cd193a730709af
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2012-03-16 08:06:12 +01:00
Robin Burchell b8773165d7 Un-deprecate QPointer per mailing list discussion.
Now that QPointer is implemented in an efficient manner, there is really no need
to avoid it, deprecating it just adds a large amount of churn.

Change-Id: I32116faf14c3b07631d59ba9585f9ce422531646
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-03-15 23:18:00 +01:00
João Abecasis 0147ee75dd Use strlen to determine length of returned path
Change-Id: I8603f032bacdbb060be043f8720bd2b8c34d7ec6
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-03-15 00:50:47 +01:00
Jędrzej Nowacki d295b9b9cf Simplify QMetaObject::newInstance
To create space on stack for a QObject pointer QVariant is not really
essential.

Change-Id: Iaf04a4f77005e33823f0e14bfdc6fe927cb59867
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2012-03-14 23:04:57 +01:00
Jędrzej Nowacki dfba10441e Reimplement QMetaType::create method.
The method was reimplemented using QMetaTypeSwitcher. That should
reduce maintenance costs, because types list is populated automatically
now.

Change-Id: I6637f7b928218ce60b2ec7436079a44089f0e00f
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-03-14 23:04:18 +01:00
Jędrzej Nowacki 439a789745 Fix a memory leak in QMetaObject::connectSlotsByName function.
QObjectPrivate::Connection time life should be controlled by
QMetaObject::Connection handle.

Change-Id: Ie7fcd950082a3e6cebc29ecc0622007470914edb
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-03-14 18:45:28 +01:00
Donald Carr 7f09f36873 Explicit use of null namespace breaks namespaced build
These changes are currently required to successfully build Qt when it is
configured with a namespace via the configure -qtnamespace argument

Change-Id: I9f3ab30579c16085c4d3d05705336b810466c331
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-03-14 18:31:31 +01:00
kb fae4a2555a Disconnect slots from the old sourcemodel in QIdentityProxyModel
When setting a new sourcemodel QIdentityProxyModel::setSourceModel
tries to disconnect from signals belonging to the NEW model instead of
from the existing sourceModel(). QIdentityProxyModel thus receives
signals from both the old model(s) and the new model. This results in
ASSERTS triggering in various slots, for example:
"Q_ASSERT(topLeft.isValid() ? topLeft.model() == model : true);"
in QIdentityProxyModelPrivate::_q_sourceDataChanged.

Change-Id: Ic6f65a9ee10981d00206335f2edef78272fadc1a
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-03-14 11:37:18 +01:00
Giuseppe D'Angelo 8b6338be4a QRegExp: remove docs about RegExp2 being default in Qt5
Change-Id: I37f4086d53ce6f2d6774ab204808d0d678a68349
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-03-14 11:37:18 +01:00
sh kim ba061da5f0 Fix build error when QT_NO_FILESYSTEMWATCHER is set
QPollingFileSystemWatcherEngine inherits from QFileSystemWatcherEngine.
This class should be covered by !QT_NO_FILESYSTEMWATCHER.

Change-Id: I053a873018cf3c9c443435c9b3f44240b0965c24
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-03-14 11:37:18 +01:00
Jędrzej Nowacki 22494ea8e8 Unify QMetaType::TypeFlags detection.
Duplicated code was removed. As an side effect:
- one runtime flag check was replaced by a compile time check.
- is enum flag can be used together with built-in types.

Change-Id: I54173e7b07ce7e487d3cc21ba24dcccd28b5d049
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-03-14 09:45:07 +01:00
Bradley T. Hughes ba6952b28d Remove -arch argument and #define QT_ARCH from configures
Do not try to detect the host or target architectures using uname or
similar, and do not override with the -arch or -host-arch configure
arguments. The configures will still accept the -arch and -host-arch
arguments, but it ignores them and instead outputs a warning stating
that these arguments are obsolete and should not be used.

Set QT_ARCH and QT_HOST_ARCH qconfig.pri variables based on the compiler
target. This is done by running qmake (twice when cross-compiling) on
config.tests/arch/arch.pro, which preprocesses a file that contains all
knowns processors.

On Windows, configure.exe has never run any config.tests before, and
does not currently have a function to run a program and capture its
output. Use _popen() to accomplish this (as qmake does for its system()
function). This needs to be done after qmake is built, as does the
mkspecs/qconfig.pri generation. As a side effect, the configure steps
have been slightly re-ordered, but the overall result is the same. The
displayConfig() call is moved to just before generating Makefiles, so
that it can show the detected architecture(s).

Change-Id: I77666c77a93b48848f87648d08e79a42f721683f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-03-13 12:27:44 +01:00
Alexei Rousskikh 612040a0cd Trailing comma should result in an error during JSON parsing
1. QJsonParseError::MissingObject defined
2. QJsonDocument::fromJson() will result in defined error after parsing
of something like "{ 'key':1 , }" or "[ {'key':1}, ]"

Change-Id: I8e6234a03b8aca4e5ad6180f273f91066b86d7a1
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-03-12 21:38:51 +01:00
Giuseppe D'Angelo 9f266efa8f QRegularExpression: add error strings for translation
Added the error strings from PCRE to be picked up by lupdate,
to enable translations.

Change-Id: Iaeabde5d7a17f9a0273511e0741e67a097d23a98
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-03-12 17:33:15 +01:00
Lars Knoll 9abefae4fb Restore some source compatibility
Add an implicit #include back in to avoid
needless SC and compilation breaks.

Add some deprecated method for codecForTr, until
all other modules are ported to mot use it anymore.

Change-Id: I5334b47a0c32819b9eb6b7203cc98ce4e6073a64
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2012-03-12 10:51:49 +01:00
Glenn Watson 15c13b91e6 Add Q_IS_ENUM(), and provide as flag in QMetaType::typeFlags()
Add Q_IS_ENUM() macro to determine if a given type is an
enumeration. Use information from that in QMetaType::registerType()
to store whether custom registered metatypes are enums or not.
This information can then be accessed by calling
QMetaType::typeFlags(int type). This is used by the declarative
code to determine whether a custom type in a variant can be safely
cast to an integer, which is required to allow passing non-local
enums as signal/slot params.

Change-Id: I9733837f56af201fa3017b4a22b761437a3c0de4
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-03-11 23:58:39 +01:00
Jędrzej Nowacki e3429f764b Crash fix in QMetaType::typeFlags.
The function is public, so it should validate input instead of crashing

Change-Id: Id67463b0b61ab74a76c1ede7f052bdbed37822b6
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-03-11 22:04:21 +01:00
Holger Hans Peter Freyther bc3a6c75f8 byteorder: Fix compilation for MIPS and GCC < 4.6.
Use the pre-processor macros to detect the byte order. This is
how it is done for ARM and other platforms. Use the variant of
the macro with the most underscores to match our ARM detection.

Change-Id: I7d2b34bf45a7f3979b44a1fe2e95f678152a5dcd
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-03-10 15:37:01 +01:00
ABBAPOH 7a1a0fc76b Remove commented 'comment'
Change-Id: I996a34fb2dc91da8b68039b4bc797a255c99d2e0
Reviewed-by: David Faure <faure@kde.org>
2012-03-10 10:53:16 +01:00
ABBAPOH bcf8c6984a Fix commas according to qt coding style
Change-Id: Ibf49f1c3d426917d1cfcb382c8ed2771d43d6e99
Reviewed-by: David Faure <faure@kde.org>
2012-03-10 10:52:55 +01:00
Rafael Roquetto c50e5f321f Updated codecs.pri to reflect new QNX mkspec name
Change-Id: Icd4a9dd774991c2be180b885b3892ff85a3f8dc1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-03-09 18:50:52 +01:00
Holger Hans Peter Freyther 8b7ea1273d byteorder: Improve the implementation comments for auto-detect
Parts of the auto-detection is using __BYTE_ORDER__. This
pre-processor macro was added in GCC 4.6. Document that in
the auto-detection code. Remove the misleading error message
in qsysinfo.h.

Change-Id: I66430ba1c9a1cdf476889ae6d5f3ca476243e000
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-03-09 18:50:52 +01:00
Rafael Roquetto 8a15c41d36 Fixes wrong iconv_open call under QNX
The wrong macro logic was causing iconv_open to never be
called under QNX.

Change-Id: I3367872fc8440f87fb59667770acd06262aef723
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-03-09 18:50:52 +01:00
Rafael Roquetto 657f634c0e Fixes mismatching delete operator
Change-Id: Ib6640daa0fdd12f98f9d7e257c226e0abdcf31dc
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-03-09 16:54:27 +01:00
Holger Hans Peter Freyther bbc97c38d5 misc: Fix some random typos and grammar while reading code.
Typos:
recieve   -> receive
descrived -> describe

Grammar:
this types -> these types

Change-Id: Iedacc51a6322996f423ac9472af0a597424a4fed
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2012-03-09 07:18:34 +01:00
David Faure e02c396acb Fix copy/paste error in QAbstractItemModel::insertRow docu.
This method is not virtual.

Change-Id: I1c82a63af07d7e78e7a572c0dfcfb2b82122d421
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-03-09 01:42:05 +01:00