This reverts commit e3e67467cfea5934f16a95385761455b0c495a0d
Reason is that it shows errors for calls to function-like macros. For example, any use of Q_DISABLE_COPY results in invalid errors.
Change-Id: I1fd1473ac5a30da5b9aebf6a3f0f11055bdbe8ad
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
- Highlight all function/methods (not just virtual methods).
- Highlight as a function even if number of arguments does not match. In
that case, add a diagnostic message to indicate there are too many/too
few arguments.
- Fix highlighting of parameters in function declarations.
These used to be handled indiferently, and they could be mistaken for
type or field references.
- Properly highlight template method calls.
Change-Id: I6ab463996dda47554839f482da47f561f76663a7
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
Most of editors have "jump to file" or "follow symbol" actions. This
patch reduces amount of related boilerplate code.
New actions are made optional to prevent shortcut clash (both use F2).
Change-Id: I2af580ed9d6789df25f4487ba001f3b83887c504
Reviewed-by: hjk <qthjk@ovi.com>
Fix indentation of auto-completed Doxygen comments, as well as auto-
leading characters from the block, to make it work with both spaces and
tabs.
Change-Id: I6c1c1665675cc25e01983e6d39b472f1b1c9683e
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
- Go to macro definition only on macro name (ie not in parameters).
- Prefer macro definition over expanded code definition, as the
preprocessor is executed first: when trying to go to definition, the
user sees the macro, not the expanded code.
Task-number: QTCREATORBUG-2240
Task-number: QTCREATORBUG-6175
Task-number: QTCREATORBUG-6848
Task-number: QTCREATORBUG-7008
Task-number: QTCREATORBUG-7009
Change-Id: I819c763524e79b20518c26a46a99a3a3b0a131bd
Reviewed-by: Andre Hartmann <aha_1980@gmx.de>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
And adapt the other API respectively.
Change-Id: I1e04e555409be09242db6890f9e013396f83aeed
Reviewed-by: Bill King <bill.king@nokia.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
Getting the #include directives ready for Qt5. This includes the
new-project wizards.
Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
Caused while to run forever when not checking
cursor.movePosition() return value.
Change-Id: Ie8211a477ab1889d4583d3b01e1a200d9905fd6d
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
This way the editor does not need to know all the details of
instantiating or maintaining classes for highlighting and/or completion,
it can just ask the model manager. The change also enables different
highlighting- or completion-engines without changes to the cppeditor.
Change-Id: I8000d9d9fe446b292defddb2295493cf77d0f14a
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
This saves one function call compared to the instance()->currentProject()
pattern and is typically less to type on the caller site.
Change-Id: I65568f30205fc90e2aaca7e8e7f0192241df8c85
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
This fixes the issue pointed below and the general case
int which superfluous asterisks are generated.
Task-number: QTCREATORBUG-6823
Change-Id: I1c8659fb5734609d90cfad052804943b8b99d5df
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Througout the initial review the singleton was transformed into an
ordinary class, but a error was introduced: The "reference" file was
incorrectly assumed to be the editors file, which is wrong, since
it should be the declaration file.
Change-Id: Iad3e25a690fa8bd07a18184b24b10f8dea965332
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
This patch introduces a priority-based mechanism when searching for certains
symbols in the snapshot. The priority corresponds to how similar the file path
from the "reference" symbol is to the file path from the "candidate" symbol.
This solves a variety of issues when matching "equivalent" symbols but that
are in another file/project, such as when following a function declaration,
a forward class declaration, or adding a definition through a quickfix.
There's now a symbol finder which will compute the "best" search order and cache
the most recent results. A consequence is that following symbols in some cases
is slower, but not apparently significatly.
Note: The "find" functions were moved from the Snapshot to the new SymbolFinder
class.
Task-number: QTCREATORBUG-6697
Task-number: QTCREATORBUG-6792
Change-Id: Ia518f014275fec1f4d0cb3224bd4e06a9df6d557
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
The model uses UTF-8 internally and it makes more sense to only
convert when necessary.
A following commit will rename the source/setSource methods in
document for more clarity too.
Change-Id: I960ea0754efabd1436ad4b4299a57faeb65a8bee
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
This improves our completion support for documentation
comments. It's now possible to have a Doxygen block
generated when hitting enter after a /** or /*! comment
start. A couple other related options are also available.
Task-number: QTCREATORBUG-2752
Task-number: QTCREATORBUG-3165
Change-Id: I1c81c0b4b370eb1d409ef72a9c7f22c357f202f4
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@nokia.com>
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
When editing a function declaration or definition the code model
may realize the same changes have to be applied somewhere else. A
refactoring marker will pop up that can be clicked to perform the
changes. Alternatively, press enter to apply.
Change-Id: I2299a2ecfb6a8f87d4853fc7cfa99486f890a1d3
Reviewed-on: http://codereview.qt.nokia.com/2909
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
All places that use it deal with unsigned revisions:
* SemanticInfo::revision
* Document::revision
* CPPEditorWidget::editorRevision
Even though QTextDocument::revision is int.
Change-Id: I2b3a94056d15fd02539d14c7cec35511abed57b5
Reviewed-on: http://codereview.qt.nokia.com/2954
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
This also changes the mutex so that the check for reusing
the last semantic info is consistent.
Task-number: QTCREATORBUG-5276
Change-Id: Ia5a2dae25ba3aa40949ac751bcda209d0bcf1f3c
Reviewed-on: http://codereview.qt.nokia.com/1581
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Fix a regression introduced by ad53fa42b0
in which follow symbol takes you to the function declaration (instead
of to the type) for situations like the one below (the | indicates the
cursor):
void Ty|pe::function() {}
Change-Id: Iffd15b23bb0cd67eca5965cb22d9b60c4d024fb7
Reviewed-on: http://codereview.qt.nokia.com/1375
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
Use Creator's main window as a reference for the width. Note that
this does not necessarily imply they are aligned.
Task-number: QTCREATORBUG-4021
Change-Id: Id0be8a7435d9b3f9eaab638f7a82bb0bd1afa192
Reviewed-on: http://codereview.qt.nokia.com/109
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>