summaryrefslogtreecommitdiffstats
path: root/src/tools/uic/main.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of some QTextCodec leftoversLars Knoll2020-05-141-1/+0
| | | | | | | There's no real dependency to QTextCodec in those files anymore. Change-Id: Ifaf19ab554fd108fa26095db4e2bd4a3e9ea427f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Start porting QTextStream away from QTextCodecLars Knoll2020-05-141-3/+1
| | | | | | | | | | | | As a first step add setEncoding/encoding() methods that use the QStringConverter::Encoding enum, and port all uses of setCodec()/ codec() over to the new API. Internally QTextStream still uses QTextCodec, this will be ported over to QStringConverter in a follow-up change. Change-Id: Icd764cf47b449b57f4ebd010c2dad89e6717d6c0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* uic: Generate Qt 5 connection syntaxFriedemann Kleint2020-05-041-0/+12
| | | | | | | | | | | | | | | Add a enum and formatting for member function pointer based connections. Now preferably use member function pointer for Qt classes or parameterless connections. This should not require qOverload() within Qt classes after the Signal/Slot disambiguation. Add command line option to force either syntax for all connections. Task-number: QTBUG-76375 Change-Id: Icdb4051e1173172a71cd536bdbc7d1ab1edf267d Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Merge remote-tracking branch 'origin/5.15' into devFriedemann Kleint2020-01-071-0/+5
|\ | | | | | | Change-Id: Ia2ce994c42adc010c453edaeea57f672556958f6
| * uic: Add handling of resources imports for PythonFriedemann Kleint2020-01-031-0/+5
| | | | | | | | | | | | | | | | | | | | | | The Python-bases pyside2-uic would write an import for each resource file encountered, adding a "_rc" suffix. Add this handling. Task-number: PYSIDE-1171 Task-number: PYSIDE-1170 Change-Id: I870d61ca7262c0684de5359a5f990d23a4171032 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | Merge remote-tracking branch 'origin/dev' into wip/qt6Alexandru Croitor2019-07-081-0/+5
|\| | | | | | | Change-Id: I02cbc4f77a82100b96cdb90c160ce0207f180d7f
| * uic: Add option to disable the call to QObject::connectSlotsByName()Friedemann Kleint2019-06-281-0/+5
| | | | | | | | | | | | | | | | | | The code was actually there, but not connected to the command line parser. Task-number: QTBUG-76375 Change-Id: I801cf2bbd2f207a6ce1dabd1ee1dfbd892089bbc Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* | Merge remote-tracking branch 'origin/dev' into wip/qt6Simon Hausmann2019-06-261-1/+1
|\| | | | | | | Change-Id: I4ea2b77cc201daed94fbe321f146dfd20365a534
| * uic: Introduce nullptrFriedemann Kleint2019-06-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apply Fixits by Qt Creator. Change-Id: Ic2d65b2604d1d71d910773e02bcdf2466f49e52c Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* | uic: Remove deprecated optionsKai Koehne2019-05-271-7/+0
|/ | | | | | | | | | | | The --no-stringliteral option got introduced by commit d12d2949d1e4ac0 for 5.10.0, but already deprecated in commit ff18b02f21a04f7 for 5.12.0. [ChangeLog][uic] uic does not accept the --no-stringliteral/-s option anymore. Change-Id: I7a0f647ad91b3760bc826884702bf8581f5565f2 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* uic: Add pythonFriedemann Kleint2019-04-051-1/+9
| | | | | | | | | | | | - Add command line option - Add import (include) handling - Add language helpers like streamable classes for Function definition, object instantiation - Implement header comment formatting Task-number: PYSIDE-797 Change-Id: I15041ab16504ea159f6665781a829cd548585af1 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* uic: Small refactoringsFriedemann Kleint2018-12-121-1/+1
| | | | | | | | | | | | | | | | | - Do not use QString::number() to stream numbers. - Do not use QLatin1String/Char to stream strings or characters. - Add a convenience methods to determine the container page add method for simple containers. - Similarly, extract a method to determine the layout method and simplify the code accordingly. - Fix Clang warnings about else if after return/continue. - Use QString::isEmpty() instead of size() to check emptiness. - Fix QHash-contains()/value() Antipattern Task-number: PYSIDE-797 Change-Id: I9c61d20f46c8d142b947126a27faaf54b41f9e0c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* Merge remote-tracking branch 'origin/5.11' into 5.12Liang Qi2018-11-091-1/+1
|\ | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf qmake/Makefile.unix src/gui/text/qtextdocument.cpp src/gui/text/qtextdocument.h Change-Id: Iba26da0ecbf2aa4ff4b956391cfb373f977f88c9
| * Modernize the "textcodec" featureLiang Qi2018-11-071-1/+1
| | | | | | | | | | | | | | | | | | Also clean up QTextCodec usage in qmake build and some includes of qtextcodec.h. Change-Id: I0475b82690024054add4e85a8724c8ea3adcf62a Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | uic: Remove remains of old Java generatorFriedemann Kleint2018-11-011-1/+0
| | | | | | | | | | | | | | | | Preparing the use of the option for Python. Task-number: PYSIDE-797 Change-Id: Ia1267b227ceac7f9dcbcfde6ed7c1480ef790f2a Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* | uic: Revert the microoptimization patch introducing QStringLiteralJarek Kobus2018-07-191-2/+4
|/ | | | | | | | | | | | | | | | | | | | This reverts the following commits: d12d2949d1e4ac08a47928ef27bc45459b3fb104 26c3bec09bccf9006f5ef4945a428d9ef56c1d12 49b08f96e824f49fab9aa5c9a1a0ed582d4558bb We can't easily predict all code paths for QDesigner with such a microoptimization. We also don't want to generate three different string constructions depending on some sophisticated heuristics. [ChangeLog][uic] The -no-stringliteral option is now deprecated and UIC will not generate QStringLiteral anymore. Task-number: QTBUG-65251 Task-number: QTBUG-51602 Change-Id: I34a5a1934a8df19c5c84ac2ba8e5168ce5665037 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* uic: Add -no-stringliteral optionAlexander Volkov2017-08-031-0/+5
| | | | | | | | | | | | | ... and use it when building shared libraries and plugins. It prevents application crashes in cases when libraries and plugins are unloaded and their strings are still used by the main application. Task-number: QTBUG-51602 Change-Id: I4af79183f18c5ed6142d55af02a36fe4334f3fee Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* uic & rcc: use the public API to set the hash seedThiago Macieira2017-03-161-2/+2
| | | | | | | | Instead of relying on a private symbol exported from QtCore. Task-number: QTBUG-47566 Change-Id: I4a7dc1fe14154695b968fffd14abd2b21a18203b Reviewed-by: David Faure <david.faure@kdab.com>
* Avoid detaching temporary objectsAlexander Volkov2017-01-251-1/+1
| | | | | | | | | | | Found with clazy [detaching-temporary]: - don't call QList::first() on temporary - don't call QString::operator[]() on temporary - don't call QByteArray::data() on temporary Change-Id: I390962ef6020e4fcb0b0e447a63eed1e314d18a4 Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru> Reviewed-by: Sérgio Martins <sergio.martins@kdab.com>
* fix build with various QT_NO_* definesNick Shaforostoff2016-08-261-0/+2
| | | | | | | Done-with: Andriy Gerasika <andriy.gerasika@gmail.com> Change-Id: I90883a491dbddb005c3d756c339e42285d50e437 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* uic: Accept an -idbased argumentPavel Geiger2016-01-281-0/+5
| | | | | | | | | | | | | | | | When we want to use qtTrId function instead QApplication::translate in generated files it's not possible to use custom function with presented by the --tr argument due to signature difference between qtTrId and QApplication::translate function. With this argument present, uic will generate qtTrId function with second argument empty. When used together with --tr parameter it will use presented function instead. Change-Id: I0d986e4ea25ce58917fd9a2866b1eac0a4671502 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* Updated license headersJani Heikkinen2016-01-211-17/+12
| | | | | | | | | | | | | From Qt 5.7 -> tools & applications are lisenced under GPL v3 with some exceptions, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new GPL-EXCEPT header instead of LGPL21 one (in those files which will be under GPL 3 with exceptions) Change-Id: I42a473ddc97101492a60b9287d90979d9eb35ae1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Update copyright headersJani Heikkinen2015-02-111-7/+7
| | | | | | | | | | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Outdated header.LGPL removed (use header.LGPL21 instead) Old header.LGPL3 renamed to header.LGPL3-COMM to match actual licensing combination. New header.LGPL-COMM taken in the use file which were using old header.LGPL3 (src/plugins/platforms/android/extract.cpp) Added new header.LGPL3 containing Commercial + LGPLv3 + GPLv2 license combination Change-Id: I6f49b819a8a20cc4f88b794a8f6726d975e8ffbe Reviewed-by: Matti Paaso <matti.paaso@theqtcompany.com>
* Update license headers and add new license filesMatti Paaso2014-09-241-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 - Removed LICENSE.GPL Change-Id: Iec3406e3eb3f133be549092015cefe33d259a3f2 Reviewed-by: Iikka Eklund <iikka.eklund@digia.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-111-0/+6
| | | | | Change-Id: I2854619ab995b4ba3c820fec58e998ad04ac9858 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.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-291-7/+0
|/ | | | | Change-Id: I2ded3a3c90eea0ae37619ff39a8111a589c4573b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-181-1/+1
| | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-221-24/+24
| | | | | | | | 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-191-4/+4
| | | | | | | | 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>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-301-1/+1
| | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: I311e001373776812699d6efc045b5f742890c689 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update contact information in license headers.Jason McDonald2012-01-231-1/+1
| | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I431bbbf76d7c27d8b502f87947675c116994c415 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-051-1/+1
| | | | | Change-Id: I02f2c620296fcd91d4967d58767ea33fc4e1e7dc Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update licenseheader text in source files for qtbase Qt moduleJyri Tahtela2011-05-241-17/+17
| | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* Initial import from the monolithic Qt.Qt by Nokia2011-04-271-0/+182
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