Commit Graph

680 Commits

Author SHA1 Message Date
Christian Kamm
ab64c1aef3 QmlJS indenter: Improve indentation of function expressions.
As discussed with Tor Arne and Fawzi in
http://codereview.qt-project.org/#change,18080

Change-Id: Ia0482d2ed3ddd61fa002e2c76b948301af52a795
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2012-03-06 17:26:46 +01:00
Robert Loehning
b41171c847 Normalized connect()s
Change-Id: Id353ab140a46e06ffc3abf667ab3b234e749e17c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-03-06 12:46:52 +01:00
Christian Kamm
658e80d1b8 QmlJS indenter: Improve handling of function expressions.
Task-number: QTCREATORBUG-7001

Change-Id: I254b84153b042c81008314bbebc800edfe201b89
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
(cherry picked from commit fcaf3d4f4c)
2012-03-01 17:00:02 +01:00
Robert Loehning
ff58b3102c QmlJS indenter: Fix hang with invalid code.
Task-number: QTCREATORBUG-7005

(cherry picked from commit 0c597a6f07)

Change-Id: I2e343fbcc6931530e7db142bf6e268dac696970f
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
2012-03-01 08:27:40 +01:00
Christian Kamm
06e6d88b81 Fix compilation of QmlJS code formatter test.
Done by moving ITextMark and ITextMarkable from itexteditor.h
to itextmark.h. The test uses parts of the texteditor plugin by
compiling some of its files. For that to work, the code has to be
fairly stand-alone. The reference to EditorManager in
itexteditor.cpp broke it.

Long term, the test should become a plugin based test to avoid this
kind of problem.

Change-Id: Ibae3bcd7365eb4e2814cd07011cad0180507e82b
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2012-02-28 15:47:11 +01:00
Erik Verbruggen
a621c99a0f [C++] Add error recovery for namespace declarations.
Change-Id: I884ff9901c95467524e5eba38e91f75992d30e14
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Reviewed-by: Flex Ferrum <flexferrum@gmail.com>
2012-02-28 10:22:31 +01:00
Erik Verbruggen
368d5926ca C++: handle destructor names with template parameters.
Change-Id: I74b4fd5e043db935abc18345b303d294b71e8fc2
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
2012-02-23 08:39:34 +01:00
Erik Verbruggen
3fa55b7ab9 Removed module names from #include directives.
Getting the #include directives ready for Qt5. This includes the
new-project wizards.

Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-02-15 16:24:46 +01:00
Erik Verbruggen
d679dc4d53 C++: Added tests for C++11 features.
Change-Id: Ifa0bc37916d3ac3a523580bec15a6685709e7810
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-02-10 08:30:48 +01:00
Roberto Raggi
5fb624b1db Fix semantic of C++ 11 inline namespaces.
Add the declaring `inline' namespace to the `using list' of its
enclosing namespace symbol. This should be enough to ensure
the correct visibility of the symbols declarated in the inlined
namespace.

Change-Id: Id4de74577c498fe439a49709a306ef0deb145988
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2012-02-03 15:37:17 +01:00
David Schulz
6d85b53f9c Revert "Editor: Highlight background for whitespaces in strings and comments"
The change brokes the Lexer.
This reverts commit e46a5579d3.

Change-Id: I3363c6eff74b53a7f2d9f417941cde07aaa92619
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2012-02-03 11:52:01 +01:00
David Schulz
e46a5579d3 Editor: Highlight background for whitespaces in strings and comments
The whitespaces are now highlighted with the same backgroundcolor as the characters.
Also added a test for the Lexer.

Task-number: QTCREATORBUG-5802

Change-Id: Ic1bcd8cfe30d6b8a0281b7963eaab310f972b9d2
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-02-01 11:17:56 +01:00
hjk
2931a499e6 Long live the king!
Change-Id: I2b72b34c0cfeafc8bdbaf49b83ff723544f2b6e2
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-01-26 19:55:36 +01:00
Tobias Hunger
0df375a08a FileName: Add method to find parent directories
Change-Id: Ia8382e3f7a9312e0878cce041723973ccf751aae
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-01-25 17:15:17 +01:00
Leandro Melo
c287d90604 C++: Rename source/setSource to utf8Source/setUtf8Source
Continuinng a previous commit... This is in order to make
the interface clearer.

Change-Id: Ic1b05217f878578bc84a064927507b75981c47d6
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2012-01-13 11:22:28 +01:00
hjk
71cad949ed debugger: make autotests compilable without private qt headers
Change-Id: Iacb6df6b369e9fd1520ae797934a9bfb9927add4
Reviewed-by: hjk <qthjk@ovi.com>
2012-01-07 20:20:50 +01:00
Christian Kamm
0ba1234108 C++ indenter: Improve member initializer indent.
If you indent the first initializer differently, that will now stick
for the following ones.

Change-Id: Ib08dfbf64282eda41202528b7255e693c350f7c6
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2011-12-08 13:55:16 +01:00
Christian Kamm
37bcdcf4f0 QmlJS checks: Disable warnings about expression statements in bindings.
Change-Id: Ic3aca50bec93ec3b810dbda2f9b57eefb966bbdf
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-12-02 14:49:59 +01:00
Christian Kamm
69d6a508d3 QmlJS indenter: Fix braceless switch/try/with bindings.
Change-Id: Iee25f3f9ec38b1b7fc2697f390386c9a60cb8347
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-12-02 09:15:04 +01:00
Christian Kamm
a24c49720a QmlJS reformatter: Fix object literals.
The comma token seems to be invalid.

Change-Id: I859fa58ba0ba1e975e0cf1105c2b53aac848fb0d
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2011-11-30 10:11:28 +01:00
Christian Kamm
d02b647bbf QmlJS checks: Don't warn for fallthrough on the last clause.
Change-Id: Ica84ced241eafd82cededa65d2e90f855e448f89
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-11-29 11:11:41 +01:00
Christian Kamm
a920096c97 QmlJS checks: Accept 'fallthrough' comment to terminate case blocks.
Change-Id: Icf71416e8aa892089b0918529b94f4cd6a1db5a3
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2011-11-29 08:25:51 +01:00
Eike Ziller
e2b0835b58 Merge remote-tracking branch 'origin/2.4'
Conflicts:
	qtcreator.pri
	src/libs/qmljs/qmljstypedescriptionreader.cpp
	src/plugins/analyzerbase/startremotedialog.ui
	src/plugins/qmldesigner/designercore/include/rewriterview.h
	src/plugins/qt4projectmanager/makestep.cpp

Change-Id: If9d15a8c8f73106585fd8ce6ac47c253a40af6b1
2011-11-25 09:48:25 +01:00
Friedemann Kleint
649ba48e4a Compile with Qt 5/Linux.
(after running fixqt4headers.pl).

Change-Id: Icb047cee2bd69acdb049beb9a769bfd2f4dcb841
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-11-24 12:05:03 +01:00
Friedemann Kleint
b0eff051c1 Add Qt 5 libraries to .pro files.
Make Qt Creator compile with Qt 5 after using fixqt4headers.pl.

Change-Id: I74ca51d562f49378b40103b79848f5dd3b11e77e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-11-24 12:02:30 +01:00
hjk
fa66a540fd fix C++11 string literal incompatibility
Change-Id: Ie5d484ba7078f29eae6636d01e1d99e3e45d1a45
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-22 15:51:41 +01:00
Christian Kamm
fad5cc0166 QmlJS indenter: Fix hang when using 'else (a==a) {}'.
Change-Id: Id7b8fba6707b1eaabf8065854f357cf600c809c5
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
(cherry picked from commit 567e68a42a)
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-11-22 13:52:39 +01:00
Christian Kamm
eaf4b5be53 QmlJS check: Extend "don't use var" performance warning.
* now also recognizes color, rect, point, size, vector3d
* to do detect these correctly, set the return types on a number of
  builtin Qt.* functions
* add test

Change-Id: Ieaeb73be208af2d47e1bb4fa1485dc876705ee20
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2011-11-22 13:25:14 +01:00
Christian Kamm
92b8a2eba8 QmlJS tests: Move 'basic' codemodel test to QmlJSTools plugin.
Change-Id: I2310f914fb200db18ff4148d6f7fa9824fe2393e
Reviewed-by: Bill King <bill.king@nokia.com>
2011-11-15 16:11:30 +01:00
Christian Kamm
bc1b724476 C++: Move codegen test into the CppTools plugin.
Change-Id: I4c70a9dbd5445188c3d202427da96e1c6ff90b63
Reviewed-by: Bill King <bill.king@nokia.com>
2011-11-15 15:37:29 +01:00
Christian Kamm
a5b26a32b3 QmlJS: Add 'reformat' action which regenerates the whole file.
Change-Id: I0aed6c6e197e122200d720eb9291a083095a6299
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-11-15 11:31:40 +01:00
Christian Kamm
12a1ba08fa QmlJS indenter: Fix indent after do-while without semicolon.
Change-Id: I4909f4640e7cd115b6c5c54c7aca7fca511653c9
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
2011-11-15 08:58:21 +01:00
Eike Ziller
85cf2b661e Merge remote-tracking branch 'origin/2.4'
Conflicts:
	src/libs/qmljs/qmljsinterpreter.cpp
	src/libs/qmljs/qmljsinterpreter.h
	src/plugins/debugger/qml/scriptconsole.cpp
	src/plugins/git/gitplugin.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativetiledcanvas.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativetiledcanvas_p.h

Change-Id: Iad59c8d87c72a21c79c047e374c0ab689998af39
2011-11-11 09:46:25 +01:00
Christian Kamm
412e61d2c2 QmlJS: Fix tests.
* Some were not adjusted for the Document::MutablePtr change.
* The basic test failed because the welcome plugin failed to load.
* The check test wasn't updated for @disable -> @disable-check.

Change-Id: Iae848832f740363bc33915d7a202a6cff08e2189
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2011-11-09 15:54:43 +01:00
hjk
31600758de all: s/info@qt.nokia.com/qt-info@nokia.com/
Change-Id: If18afb5d4665924e7d9250dccbc60a65e6daa75e
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-11-03 10:33:19 +01:00
hjk
29279ab8c7 more style fixes of string literal access
Change-Id: I60b0c53681c6a0cc38231e805479deb614aa0096
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-02 18:20:19 +01:00
Eike Ziller
912cd548c0 Merge remote-tracking branch 'origin/2.4'
Conflicts:
	src/libs/qmljs/qmljsinterpreter.cpp
	src/libs/qmljs/qmljsinterpreter.h
	src/plugins/madde/maemopackagecreationstep.cpp
	src/plugins/projectexplorer/buildmanager.cpp
	src/plugins/qmljstools/qmljsqtstylecodeformatter.cpp
	src/plugins/qmljstools/qmljsqtstylecodeformatter.h
	tests/auto/qml/qmleditor/qmlcodeformatter/tst_qmlcodeformatter.cpp

Change-Id: I63ab2ba5dac006c37ccfbae55b023396a4676ff7
2011-11-01 18:16:38 +01:00
Christian Kamm
a9553c494e QmlJS indenter: Never touch indent of multi-line strings.
Task-number: QTCREATORBUG-6368
Change-Id: Iae68427e429e625214bc0729aaaf313dc3371570
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2011-10-31 09:37:17 +01:00
Eike Ziller
81cce8902e Merge remote-tracking branch 'origin/2.4'
Conflicts:
	qtcreator.pri
	src/libs/qmljs/qmljscheck.cpp
	src/plugins/debugger/gdb/gdbengine.cpp
	src/plugins/debugger/gdb/remotegdbserveradapter.cpp
	src/plugins/plugins.pro
	src/plugins/projectexplorer/buildmanager.cpp
	src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp

Change-Id: Id2dcebf95b94dc46c1d85908ba1d1378aaf362ac
2011-10-28 10:17:44 +02:00
Bill King
f315598749 Fixes compilation when QT is namespaced.
Change-Id: I5229e367d9468fcc25119c6efcb0f9127ac9a13d
Reviewed-by: hjk <qthjk@ovi.com>
2011-10-26 11:21:47 +02:00
Christian Kamm
e906bbdb56 QmlJS checks: Warn about extra message suppressions.
Reviewed-by: Fawzi Mohamed
Change-Id: I4038cd863ba80c1719417cd03b755b047f7d8b5e
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
2011-10-21 08:31:45 +02:00
Christian Kamm
65ef5f7a35 Fix tests/auto/cplusplus/codegen on windows.
Change-Id: I765baa58c6b39d98949c0c8530623baf112f42bb
Reviewed-by: Bill King <bill.king@nokia.com>
2011-10-20 11:44:15 +02:00
Christian Kamm
567e68a42a QmlJS indenter: Fix hang when using 'else (a==a) {}'.
Change-Id: Id7b8fba6707b1eaabf8065854f357cf600c809c5
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-10-19 09:40:12 +02:00
Christian Kamm
3ede0687ba QmlJS indenter: Improve indentation of function literals.
Change-Id: Ic79745eefbf37e42d4dd42e73d3752bed34bbfa9
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2011-10-19 08:33:28 +02:00
Christian Kamm
4a487b1add QmlJS indenter: Move reusable code to qmljs lib.
Change-Id: I5ab50b586109a9736cda48245807571ce10dfb5b
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2011-10-19 08:33:21 +02:00
Christian Kamm
89ff3cebe6 QmlJS: Introduce UnknownValue.
To distinguish known-to-be-undefined from a genuinely unknown value.

Change-Id: I606b4ea4d726f94553400b8950d3c0a4e76564a8
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2011-10-18 13:16:18 +02:00
Eike Ziller
8eb8368139 Merge remote-tracking branch 'origin/2.4'
Conflicts:
	qtcreator.pri
	src/libs/qmljs/qmljstypedescriptionreader.cpp
	tests/auto/qml/qmleditor/qmlcodeformatter/tst_qmlcodeformatter.cpp

Change-Id: Id032187023bb42f259a87545ceeb3c965dd01a32
2011-10-17 14:22:32 +02:00
Christian Kamm
ea24106373 QmlJS indenter: Fix ternary multiline indent.
Task-number: QTCREATORBUG-6208
Change-Id: I7e5267291bc01226b5339cb4abdbb15856c58477
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-10-17 11:22:34 +02:00
Christian Kamm
0c4bd321e5 Json: Fix indenter for json files.
Change-Id: Id864509dd78a70fc34a3798b80f7e1c8991181f4
Reviewed-on: http://codereview.qt-project.org/6038
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2011-10-12 11:34:43 +02:00
Christian Kamm
7ed717ca62 QmlJS: Add more value_casts.
And switch all existing dynamic_casts to value_casts.

Change-Id: I93b89358e4802080f40b332074c64f4e91a2bc4c
Reviewed-on: http://codereview.qt-project.org/6311
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2011-10-12 10:55:55 +02:00