In preperation for the language server protocol support.
Change-Id: Iee4ccd53a86d9afdb357972ea62b75ace2edcb1d
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
The reformatter used to add unnecessary empty lines, notably before
comments after import declarations.
Task-number: QTCREATORBUG-18332
Change-Id: I96d6f2dd53d1197aa6bc0b834971a66861b2f498
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
Fixes warning: prefer using 'override' or (rarely) 'final' instead of
'virtual' [modernize-use-override]
Change-Id: I17955fd0fdb052678228f1bda32cd8d3b4298998
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
We want to have qbs syntax highlighting, even if the
import qbs
statement is missing, because we want to remove the reqirement for it.
Change-Id: I569be825440bc733c3c0fa8e146e785060e08384
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
warning: 'virtual' is redundant since the function is already declared
'override' [modernize-use-override]
warning: 'override' is redundant since the function is already declared
'final' [modernize-use-override]
Change-Id: I9036a0dc88ed70c4f6e37b916bb24ff65074863d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Add indentation and little highlighting for enums.
It just highlights the 'enum' keyword and the name of the enum, not its
values.
Task-number: QTCREATORBUG-19226
Change-Id: I36e46a27b0e32c4aecc8e91875c3d22df1814d93
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
The directives .pragma and .import are not included in the AST.
Their source code locations are not stored in any other place.
As a result, when reformatting the source, they simply disappear.
This patch keep track of their source code locations, so they are
not removed when reformatting the source code.
This patch contains also some modification in the lexer that should
probably be ported to the qtdeclarative version.
Task-number: QTCREATORBUG-13038
Change-Id: I5d568abf02d37a584d4d246939736aaec5af5053
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Try to minimize differences on sync
Change-Id: I9af325911b1a6a7635099cb3a5c778305e5e6223
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
Reviewed-by: hjk <hjk@qt.io>
The reformatter used to remove the quotes that wraps the property name
in object literals. This causes problem when the name is not a
valid identifier, resulting in that valid code become invalid after
reformatting.
This patch forces wrapping of property's name in quotes: in this way,
the reformatted code is consistent and it never get invalidated.
However the resulting formatted code is not consisted with the one
formatted by previous versions.
Task-number: QTCREATORBUG-17455
Change-Id: I1e361102819055de210d6c81020f204c08aaa253
Reviewed-by: Markus Maier <markus.maier.sw@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
This patch removes all references to QtQuick1 in qml library,
plugin, designer, profiler and tests.
Change-Id: Ie286fad96060299caae3ef328330597cf53e90d3
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Types information for qbs is more limited that qml; this causes
qtcreator to raise false positives. This patch relax the checks and
provide some type information needed by qbs files generated by the
wizards.
Task-number: QTCREATORBUG-19757
Change-Id: I07a1dd9d8fedaf4c5c751c2f00643f15ae39127a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Lint message M127 (Expression statements should be assignments, calls
or delete expression only) is a warning and not an error.
Task-number: QTCREATORBUG-19534
Change-Id: Iff93cd77582c28f4160fe7a8dec42f19c22436cb
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
QtCreator now assumes that QtQuick2 is used, so the relevant bundle is
loaded unconditionally.
Change-Id: Ib6b7b0c9a949e74edf0e0b7f68b0c774d7bcb451
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
... by additionally keeping local (currently non-owning) pools per
"interesting" type.
Current situation:
- The global object pool does not scale well for looking up
objects, as iteration plus qobject_cast typically iterates
over all pooled objects.
- User code that can use typed results from the object
pool need to have access to the full type definition anyway,
i.e. depend on the plugin of the target class anyway.
The patch here solves the scaling problem is to have local
type-specific pools to which objects register in their
constructors and deregister in their destructors.
This patch here does *not* change the ownership model of the
pooled objects, however, it opens the possibility to change
the ownership model per type (e.g. by not putting things into
the global pool at all anymore and make the local pool 'owning')
and the intent is to handle that in later patchs.
Even without the follow-up patches this here is a performance
improvement for the cases that access the local pools instead
the global one, i.e. "practically all".
Change-Id: Ib11a42df2c4ecf5e1155534730083a520dd1995b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This rids us of the "Issues" about various wizard files when opening
qtcreator.pro
Change-Id: Ib49e87ded791bcc9155e65a77cac523c1f67de56
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
This way we can pass it through signals across threads.
Change-Id: I6753233204d9210d181633e16f1d5bff967d55c9
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
The default property of most QtQuick items is data and
therefore "data" should not be used as a property name.
Task-number: QTCREATORBUG-19225
Change-Id: I54d1b72ce984debd4c366b7261e93b7a81b8c940
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
The introduction of Controls.2 changed the way in which imports are
resolved. This patch fix some leftovers of the old resolution scheme.
Such leftovers caused false positives in import declaration to happen
when resetting the QML/JS code model.
The code has also been simplified a little, by the removal of
duplicate code and of unused methods.
Change-Id: I90bdf7ed47fdfea7cbd8259acd7a9a968f27301b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Do not add an empty line between common cases in a `switch` block,
according the best practices for javascript style.
Task-number: QTCREATORBUG-18515
Change-Id: I8b665eabb9b1d5b617d608e430e8b9137dc32032
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Attached properties used to cause false positives in the highlighter,
because when using qualified ids, only the first part was checked as
candidate for being at attached property.
Task-number: QTCREATORBUG-18707
Change-Id: I6b1b569bc1766325decbc5d100c16a4e0dc3634f
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
The size of tabs and indentation used to be ignored when reformatting
a file.
Task-number: QTCREATORBUG-12849
Change-Id: I0b522b526a199c6397b78b5e193159ec52fc941a
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Easily conflicts with a macro of the same name in windows.h.
Change-Id: Ia6dfb294092497c48816e71ff901e9c3b2c8359f
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Resolve references while looking up for object members.
Task-number: QTCREATORBUG-18362
Change-Id: I9d2b2457fb3488c723a41e4e8ba1fc0ea9fe800f
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>