summaryrefslogtreecommitdiffstats
path: root/src/tools/uic
Commit message (Collapse)AuthorAgeFilesLines
* Micro-optimize uicJędrzej Nowacki2014-07-311-1/+1
| | | | | | | Avoid redundant QStringRef to QString conversion. Change-Id: I93c4f19798e81515f483371f0cc6fcccc7fe36c7 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Disable hash seeding for bootstrapped toolsThiago Macieira2014-05-211-0/+3
| | | | | | | | | | | | | | | | | | Any bootstrapped tool is a development tool, by definition. So the effects of seeding the hash with a random number can cause the same source input to produce different binary results, which can throw some caching tools into disarray (like the Open Build System). There should be minimal fall out from the reduced protection against DoS. Since those are only development tools, "specially crafted" input implies the developer is DoS'ing him/herself. Note: the change to qhash.cpp applies to moc and rcc, which are always bootstrapped. Change-Id: I061ab52036e40627c0703f1bf881455cbf848f43 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: hjk <hjk121@nokiamail.com>
* uic: Accept an -include argument to generate a #include.Stephen Kelly2013-11-113-0/+10
| | | | | Change-Id: I2854619ab995b4ba3c820fec58e998ad04ac9858 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Add QKeySequenceEditIvan Komissarov2013-09-241-0/+1
| | | | | Change-Id: I497309d3e6cbf38b298afb5ff3cb1ed6a0e82000 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Remove qFill usages from uicGiuseppe D'Angelo2013-09-131-2/+4
| | | | | | | | | QtAlgorithms is getting deprecated, see http://www.mail-archive.com/development@qt-project.org/msg01603.html Change-Id: I58d0c78609381b20ffe8a68e36c8216689362ed5 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Port uic to QCommandLineParserDavid Faure2013-08-291-79/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: ======= Qt User Interface Compiler version 5.2.0 Usage: uic [options] <uifile> -h, -help display this help and exit -v, -version display version -d, -dependencies display the dependencies -o <file> place the output into <file> -tr <func> use func() for i18n -p, -no-protection disable header protection -n, -no-implicit-includes disable generation of #include-directives for forms generated by uic3 -g <name> change generator After: ====== Usage: uic [options] [uifile] Qt User Interface Compiler version 5.2.0 Options: -h, --help Displays this help. -v, --version Displays version information. -d, --dependencies Display the dependencies. -o, --output <file> Place the output into <file> -p, --no-protection Disable header protection. -n, --no-implicit-includes Disable generation of #include-directives. --postfix <postfix> Postfix to add to all generated classnames. --tr, --translate <function> Use <function> for i18n. -g, --generator <java|cpp> Select generator. Arguments: [uifile] Input file (*.ui), otherwise stdin. Notes: * "-dependencies" etc. still work. * -n option still has effect, but technically not only for ui3 files * the fact that the <uifile> parameter is optional wasn't documented * -postfix option was undocumented * -translate alternative for -tr was undocumented The last two points show the benefit of using QCommandLineParser. Change-Id: Ie05cfb9bbe50f4ac2788aa7b6011b2daa1acde6a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-211-1/+1
|\ | | | | | | | | | | | | | | | | Conflicts: qmake/doc/src/qmake-manual.qdoc src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/src.pro Change-Id: I0a560826c420e46988da3776bd8f9160c365459a
| * don't include qconfig.cpp into moc and uicOswald Buddenhagen2013-08-151-1/+1
| | | | | | | | | | | | | | | | | | whatever it was used for is long gone. Change-Id: Ifab7ae7968b1ab65982b1a6414274b3502bbc3d0 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Uic: remove unused option -3David Faure2013-07-292-8/+0
|/ | | | | Change-Id: I2ded3a3c90eea0ae37619ff39a8111a589c4573b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Adapt QtPrintSupport related uic ruleshjk2013-06-041-3/+3
| | | | | | | | It's no more on QtWidgets. Task-number: QTBUG-31508 Change-Id: Iba117a4103c2b32173816a4ecb5faa187f169b32 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Remove unused private members [tools]Thiago Macieira2013-04-113-5/+2
| | | | | | | | | | | | | | | Apple Clang 4.2 caught private members that aren't used in a class with no friends. Since this code is in a tool, there's no binary compatibility requirement. databaseinfo.h:71:13: error: private field 'driver' is not used [-Werror,-Wunused-private-field] quoter.h:86:10: error: private field 'validRegExp' is not used [-Werror,-Wunused-private-field] qmlvisitor.h:123:11: error: private field 'tree' is not used [-Werror,-Wunused-private-field] Change-Id: Iba9995f28ddef983c9ffc1dc551f042539252704 Reviewed-by: Alan Alpert <aalpert@blackberry.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-04-031-1/+1
|\ | | | | | | Change-Id: Icedabda08961326a0a447ec71f1b0f0f5df075eb
| * Revert "qclass_lib_map.h: Fix include of the QDeclarativeView widget."Friedemann Kleint2013-03-261-1/+1
| | | | | | | | | | | | | | | | | | | | This reverts commit 7b655eef489038a96c5c5ba2e80d6129eca3cf41. QDeclarativeView is back in QDeclarative. Task-number: QTBUG-25196 Change-Id: Ibe40e790c98b5129bbd844924f71cf3ca0202b5f Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* | Whitespace cleanup: remove trailing whitespaceAxel Waggershauser2013-03-162-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove all trailing whitespace from the following list of files: *.cpp *.h *.conf *.qdoc *.pro *.pri *.mm *.rc *.pl *.qps *.xpm *.txt *README excluding 3rdparty, test-data and auto generated code. Note A): the only non 3rdparty c++-files that still have trailing whitespace after this change are: * src/corelib/codecs/cp949codetbl_p.h * src/corelib/codecs/qjpunicode.cpp * src/corelib/codecs/qbig5codec.cpp * src/corelib/xml/qxmlstream_p.h * src/tools/qdoc/qmlparser/qqmljsgrammar.cpp * src/tools/uic/ui4.cpp * tests/auto/other/qtokenautomaton/tokenizers/* * tests/benchmarks/corelib/tools/qstring/data.cpp * util/lexgen/tokenizer.cpp Note B): in about 30 files some overlapping 'leading tab' and 'TAB character in non-leading whitespace' issues have been fixed to make the sanity bot happy. Plus some general ws-fixes here and there as asked for during review. Change-Id: Ia713113c34d82442d6ce4d93d8b1cf545075d11d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Rename the SQL driver header files to _p.h (make private)Thiago Macieira2013-02-261-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | The drivers were never public API. They were exposed by mistake in public headers. What's more, they have #include'd a private header (qsqlcachedresult_p.h) since at least Qt 4.5.1. That means no one used those headers in Qt 4 (private headers weren't installed then) and it's unlikely anyone did in 5.0. Change-Id: Ie0a47bcf0260ee6bdd3d8494b78fd1eec28a2d6b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* | Remove unused variableMontel Laurent2013-02-111-1/+0
|/ | | | | Change-Id: I3cef189a668f73c8599958b2c15bf140bd86d091 Reviewed-by: David Faure <david.faure@kdab.com>
* Adapt to WebKit Widgets module split.Volker Krause2013-01-191-4/+4
| | | | | | | | | These classes moved as well, but were missed in commit c07408e2. This fixes uic generating invalid code if any of these classes are used in an .ui file. Change-Id: I0359157f540a5f4979cca781169e5a9b2a0afad7 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-1832-32/+32
| | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Remove the timestamp info in genarated filesLiang Qi2012-12-151-2/+1
| | | | | | | | | | | | | For moc, rcc and uic, then it's friendly for tools like ccache. ccache is using md5 to check file modification, but the different timestamp info will cause different md5 for same meaningful contents, it will disabled ccache. Updated the autotest for uic and rcc. Task-number: QTBUG-26589 Change-Id: I9f1dcf6cd826ad9603af6e183757bcd748c32bd1 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* uic: remove internal QStyle subclasses from qclass_lib_map.hJ-P Nurmi2012-11-291-7/+0
| | | | | Change-Id: I10f0b2198d60f882cd59a03f33b2cc1afb0ffcf5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* uic - fix to handle QTreeWidget with empty header(s)Thorbjørn Lund Martsum2012-11-211-0/+6
| | | | | | | | | | | | | | | | | | | This makes it possible for uic to handle QTreeWidget that in the designer has one or more empty headers. Before the right(most) empty items where there wasn't a non-empty header to the right of them would not be visible. The other empty items - where there was a header to the right of it would not be empty but initialized with a number. This patch ensures the same behavior that the QTableWidget is having. Task-number: QTBUG-18156 Change-Id: I19bfd3307befe46a1af2d6a3275f7446a15b3442 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* make qt_tool support building bootstrapped toolsOswald Buddenhagen2012-11-161-6/+1
| | | | | | | | | | as a "side effect", this fixes the build of bootstrapped tools when doing a debug build under msvc: qt.prf would add CONFIG+=release after default_post.prf already loaded debug.prf. Change-Id: Idd17cf28d358950fd90bb18ca7a8d67e06953bc1 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* remove pointless TARGET assignmentsOswald Buddenhagen2012-11-161-1/+0
| | | | | | | TARGET defaults to the project file's basename Change-Id: I0cd204ae6559e6c51d3c987bc38ae372e2b4a3dd Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Generate a proper static QtBootstrap moduleOswald Buddenhagen2012-11-081-3/+2
| | | | | | | | | | | Making a properly installed libQtBootstrap simplifies our tools build process a little and in addition allows other comand line tools to use the bootstrap lib and link against it. Initial-version-by: Lars Knoll Change-Id: Iddf4568a5505bc24898ec1abf7e7022e19f0a454 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Remove Cleanlooks and PlastiqueJens Bache-Wiig2012-10-221-2/+0
| | | | | | | | | We have a new style Fusion that will replace these styles. They will be moved to a separate module rather than included in platforms that do not need them. Change-Id: I51ebbcad5406e99130e5b12e62ba624d1489088c Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Adapt to WebKit Widgets module changesSimon Hausmann2012-10-151-2/+2
| | | | | | | | | QtWebKit is being split up into QtWebKit and QtWebKitWidgets. QWebView and QGraphicsWebView live in the QtWebKitWidgets module and consequently the class list here in UIC needs to be adapted. Change-Id: I245dba49d4fb23ca197f78de4a429b8ba9f78c3f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* uic: Map QLCDNumber::numDigits to QLCDNumber::digitCount.Friedemann Kleint2012-10-081-1/+6
| | | | | | | | QLCDNumber::numDigits was deprecated in Qt 4 and removed in Qt 5. Task-number: QTBUG-27462 Change-Id: I3772a884f31aeea70121cccd429ac996b2ecbccd Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
* Remove CDE and Motif styles from qtbaseJens Bache-Wiig2012-09-271-2/+0
| | | | | | | | | | | | | | | | | It is time to clean up some of our legacy code. These styles have not been actively maintained for a long time and I think it is safe to say that they should no longer belong as part of the default distribution of Qt. We dont support any platforms based on CDE with our source packages. Note that even if we are removing these styles from the default distribution of Qt, applications that depend on them will still be able to bundle the existing (and unmodified) styles along with their own source code as we are not breaking compatibility. Change-Id: I1709630c20ba8e8088cd01628628d86856db57a4 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-2232-769/+769
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* make src/tools/ compile without CamelCase headersOswald Buddenhagen2012-09-1922-64/+63
| | | | | | | | so the build works with syncqt -minimal Change-Id: Ief5e8eb9a504dd6c84cff76cc3e5257450386a0f Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* SIC: QtPrintSupport - Remove QAbstractPageSetupDialogJohn Layt2012-09-171-1/+0
| | | | | | | | | | | | QAbstractPageSetupDialog is a completely unnecessary base class that is not really abstract and is used nowhere else. This changes merges its methods into the QPageSetupDialog main class. While technically SIC no-one else uses this so no apps should be affected. Change-Id: I59b1739f1c453c34c25d1664d5d042e7918db316 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Make maemo scope syntax in project files more genericLaszlo Papp2012-09-141-1/+1
| | | | | | | | | | | | | | | | | It is necessary to use the n9 device file for now in scratchbox or/and on the community open build service because the maemo platform mkspecs file assumes that a cross-toolchain is used all the time. If no platform file is used, then for instance certain plugins may not be built in general. There is currently an ongoing issue with the meego plugin for context management in the Harmattan components project. That is currently not built due to this issue, so no orientation works in those applications. The nice solution would be to make the maemo platform file work with cross and native toolchains as well, but that requires a decent amount of investigation and work. Thereby, the scope is extended this way for now. Change-Id: I172c7d152bdbb2db279526d9fd1ca5648d0cd0a9 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Remove QProxyModel from qtbase.Stephen Kelly2012-08-201-1/+0
| | | | | | | A copy is placed in uihelpers for anyone who might be using it. Change-Id: I175f7bc5dcbf25a910d28bfd8985579866392938 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix crash in uicAndreas Holzammer2012-08-011-2/+6
| | | | | | | | | | | Compiling Qt5 uic with Microsoft Visual Studio 2008 with SP1 will lead into a assertion in the copy constructor of qstring. This is apparently a compiler Bug. Change-Id: Ia3353434d00b2e87800b937d891eabef86293751 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* qclass_lib_map.h: Fix include of the QDeclarativeView widget.Friedemann Kleint2012-07-311-1/+1
| | | | | | | Task-number: QTBUG-25196 Change-Id: If25c4df29297435b159706257d9f37a9ef2f3d7a Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* remove some qmake -project boilerplate from project filesOswald Buddenhagen2012-06-191-2/+0
| | | | | Change-Id: I5e6103db42b4fcca4ed4c2ffaec71e71e73d5b95 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* properly declare the host tools as such in the project filesOswald Buddenhagen2012-06-191-0/+1
| | | | | | | don't mess with the qmake cmdline args any more. Change-Id: I399d87145d31d25e29951b6acd96387a3c7282f0 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* QtPrintSupport - Cleanup QPrintDialog headerJohn Layt2012-06-011-1/+0
| | | | | | | | | | | | | | Move QUnixPrintWidget from the header to the UNIX implementation as it is not used anywhere else and doesn't need to be exported. Make the private slots only compile under UNIX, remove the Mac and Win stubs for them as unneeded. Add some documentation to the UNIX dialog Change-Id: I8f30504285df877e17ac8eeace875f666f43d94d Reviewed-by: Teemu Katajisto <teemu.katajisto@digia.com> Reviewed-by: John Layt <jlayt@kde.org>
* Replace `const QLatin1String &` with `QLatin1String` where appropriateKonstantin Ritt2012-05-254-4/+4
| | | | | | | Task-Id: QTBUG-24502 Change-Id: I360dee4dc68c165de0631ce4cf34e76fd873080e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Don't use the deprecated translate() method anymoreLars Knoll2012-05-181-5/+0
| | | | | | | | | | The Encoding argument of QCoreApplication::translate() is deprecated and source code is always assumed to be encoded in Utf8. Simply remove the encoding argument from the generated .ui.h files. Change-Id: If6c40f6df13abd45a0303c863077972c3d1fb685 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Expose QPA API under qpa/*Girish Ramakrishnan2012-05-071-12/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The main reasons for doing this are: 1. _qpa.h end up in the master QtGui include file. QtGui is meant for userland applications. qpa code is neither binary nor source compatible. Inadvertant use of QPA api makes the user code binary-incompatible. 2. syncqt creates forwarding headers for non-private header files. This gives people the impression that this is public API. As discussed on the mailing list, even though QPA api is internal and subject to change, it needs to treated differently from private headers since they will be used by in-qtbase and out-of-qtbase plugins. This commit does the following: 1. The _qpa in QPA header files is dropped. 2. syncqt now treats any file with qplatform prefix as a special file and moves it to qpa/ directory. The recommended way of using QPA API in plugins is: #include <qpa/qplatformfoo.h>. This allows the user include QPA API from multiple modules (for example, qplatformfoo might be in QtPrintSupport) 3. The user needs to explicitly add QT += <module>-private to get access to the qpa api. 4. Creates compat headers for the olden style qplatformfoo_qpa.h and QPlatformFoo includes. This commit does not change the cpp filenames. This requires a more careful merging of existing non qpa cpp files and existing cpp files on a case by case basis. This can be done at anytime. The following files are not renamed as part of this changed but will be fixed as part of a future change: src/gui/kernel/qgenericpluginfactory_qpa.h src/gui/kernel/qgenericplugin_qpa.h src/gui/kernel/qwindowsysteminterface_qpa.h files were renamed using for x in `find . -name "qplatform*_qpa.h"`; do git mv $x "${x/_qpa.h/.h}"; done for x in `find . -name "qplatform*_qpa_p.h"`; do git mv $x "${x/_qpa_p.h/_p.h}"; done includes were renamed using script for file in `find . -name "*.h" -or -name "*.cpp" -or -name "*.mm"`; do sed -i -e 's,.*#.*include.*<\(Qt.*/\)\?\(QPlatform.*\)>,#include <qpa/\L\2.h>,g' \ -e 's,.*#.*include.*"\(Qt.*/\)\?\(QPlatform.*\)",#include <qpa/\L\2.h>,g' \ -e 's,.*#.*include.* "\(qplatform.*\)_qpa.h",#include <qpa/\L\1.h>,g' \ -e 's,.*#.*include.*"\(qplatform.*\)_qpa_p.h",#include <qpa/\L\1_p.h>,g' \ -e 's,.*#.*include.*<\(Qt.*/\|Qt.*/private/\|private/\)\?\(qplatform.*\)_qpa\(.*\)>,#include <qpa/\2\3>,g' \ -e 's,.*#.*include.*"\(Qt.*/\|Qt.*/private/\|private/\)\?\(qplatform.*\)_qpa\(.*\)",#include <qpa/\2\3>,g' \ $file done Change-Id: I04a350314a45746e3911f54b3b21ad03315afb67 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Remove QWorkspace.Debao Zhang2012-03-232-3/+0
| | | | | | | | | | QWorkspace had been called Q3Workspace before Qt4.0 finally released. In a sense, it is a Qt3 support Widget. And QWorkspace has been deprecated and replaced by QMdiArea at Qt4.3. Change-Id: Iea1bf831c9960c23c2b21d51fdc7c13b303642ea Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* QtWidgets: Cleanup Q3* itemsDebao Zhang2012-03-201-3/+0
| | | | | | | | | Clear all the Q3* items away, expect QStyle::SH_Q3ListViewExpand_SelectMouseType which is still used by QTreeView. So simply removed Q3 from its name. Change-Id: Ia79f0283137b6751ba68791ae55df1d8bd7ea74a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* uic: Avoid creating multiline QStringLiterals for MSVC.Friedemann Kleint2012-03-131-10/+25
| | | | | | | The compiler complains about L"foo" "bar". Change-Id: I94be0528b26fe65413db56d210a5c02fcdba13a3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* revamp -sysroot and -hostprefix handlingOswald Buddenhagen2012-03-011-1/+1
| | | | | | | | | | | | | | | | | instead of being a variable added to the makespec (via qconfig.pri), QT_SYSROOT is now a property. the QT_INSTALL_... properties are now automatically prefixed with the sysroot; the raw values are available as QT_RAW_INSTALL_... - this is expected to cause the least migration effort for existing projects. -hostprefix and the new -hostbindir & -hostdatadir now feed the new QT_HOST_... properties. adapted the qmake feature files and the qtbase build system accordingly. Change-Id: Iaa9b65bc10d9fe9c4988d620c70a8ce72177f8d4 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* Merge master -> api_changesRohan McGovern2012-02-292-2/+0
|\ | | | | | | | | | | Includes fixes for tst_qfiledialog2, tst_qtextedit autotests on mac. Change-Id: I49cac26894d31291a8339ccc1eb80b6a940f0827
| * uic: remove unused QRegExp #includesGiuseppe D'Angelo2012-02-262-2/+0
| | | | | | | | | | | | | | QRegExp is not used, so they're unnecessary. Change-Id: I3480bcbe013a0bf15e2ee4fa30862fe035820eea Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QByteArray: deprecate QT_NO_CAST_FROM_BYTEARRAY-protected operatorsMarc Mutz2012-02-261-2/+2
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QByteArray::operator const {char,void}*() implicit conversions are a source of subtle bugs, so they right- fully can be disabled with QT_NO_CAST_FROM_BYTEARRAY. const char *d = qstring.toLatin1(); // implicit conversion while ( d ) // oops: d points to freed memory // ... But almost no-one ever enabled this macros in the wild and many were bitten by these implicit conversions, so this patch deprecates them. I would have liked to remove them completely, but there are just too many occurrences even in Qt itself to hope to find all conditionally-compiled code that uses these. Also fixes all code that needs to compile under QT_NO_DEPRECATED (in qmake/, src/tools/). I984706452db7d0841620a0f64e179906123f3849 separately deals with the bulk of changes in src/ and examples/. Depends on I5ea1ad3c96d9e64167be53c0c418c7b7dba51f68. Change-Id: I8d47e6c293c80f61c6288c9f8d42fda41afe2267 Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Drop file-engine abstraction from public APIJoão Abecasis2012-02-221-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This abstraction imposed serious performance penalties and is being dropped from the public API. In particular, by allowing file names to be arbitrarily hijacked by different file engines, and requiring engines to be instantiated in order to decide, it imposed unnecessary overhead on all file operations. Another flaw in the design with direct impact on performance is how engines have no way to provide (or retain) additional information obtained when querying the filesystem. In many places this has meant repeated operations on the file system, where useful information is immediately discarded to be queried again subsequently. For Qt 4.8 a major refactoring of the code base took place to allow bypassing the file-engine abstraction in select places, with considerable performance gains observed. In Qt 5 it is expected we'll be able to take this further, reaping even more benefits, but the abstraction has to go. [Dropping this now does not preclude that virtual file systems make an appearance in Qt at a later point in Qt 5's lifecycle. Hopefully with a new and improved abstraction.] Forward declarations for QFileExtension(Result) were dropped, as the classes were never used or defined. Tests using "internalized" classes will only fully run on developer builds. QFSFileEngine was removed altogether from exception safety test, as it isn't its intent to test internal API. Change-Id: Ie910e6c2628be202ea9e05366b091d6d529b246b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* replace 'const QChar &' with 'QChar ' where appropriateKonstantin Ritt2012-02-211-1/+1
| | | | | | | | | as QChar is actually an ushort and there is no point in taking its address. Merge-request: 69 Change-Id: Idcc9d621e5627514ade006aa12a789a88929d48b Reviewed-by: Olivier Goffart <ogoffart@woboq.com>