- 13 Jan, 2016 2 commits
-
-
Marco Bubke authored
Change-Id: I0fc4c73553a29585d4ff7c8d6593acb6975d1607 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
Marco Bubke authored
Also extracting inline HeaderPath class and change projects list in vector because the size is larger than a pointer. Change-Id: I885fdff3fe9bccc877634d1615249755f5b674fd Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- 12 Jan, 2016 1 commit
-
-
Marco Bubke authored
We broke the dependency of BaseEditorDocumentProcessor *BaseEditorDocumentProcessor::get(const QString &filePath) It's hiding static calls and it is much easier to do it that way than to provide a reference to every user. It's also possible to exchange it with different implementations for different test cases. Change-Id: Ic74699b45948e8b48f7efb6a1b295ba2641b8951 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- 12 Oct, 2015 1 commit
-
-
Nikolai Kosjar authored
Finding the class definition for a forward declaration or finding the function definition from its declaration is mostly determined by the file iteration order. Documents with the most common path prefix are checked first. This works fine as long as the files of your project have a common ancestor. If that's not the case, FollowSymbol might take you to the definition within another project. Fix that issue by considering the project part id when constructing the file iteration order. Since the cached file iteration order now depends on the projects, ensure to clear it if projects are added, changed or removed. Task-number: QTCREATORBUG-15116 Change-Id: I529166bac363959c9fee0b946747fd0370a88809 Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- 28 Sep, 2015 1 commit
-
-
Marco Bubke authored
Reparsing a document is expensive so we should avoid it by all means. In this patch we prevent that the same document is send again. It isn't send too in advance of a code completion if there was no changes before the the completion position. Change-Id: I0bb786ba1d4e7ce08611a518cb32f8cf8f4d0037 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- 26 Jan, 2015 1 commit
-
-
Nikolai Kosjar authored
Change-Id: I75768f548f8f914e76fbdeaf3c318c207782fe1b Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- 21 Jan, 2015 1 commit
-
-
Nikolai Kosjar authored
As as side effect, this also brings some more pragma completions for the builtin-in completion engine, e.g. "pragma once" or "pragma omp atomic". Change-Id: If3ef22076c331c653b78a87cfff836c1da38c8fb Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
- 12 Jan, 2015 1 commit
-
-
Eike Ziller authored
Collects all included files from any file of any project or that is open in an editor. It has the same shortcut as the files from any project filter and is also enabled by default. Task-number: QTCREATORBUG-280 Change-Id: I7cd89ee68d2f8ec4e0ea03de0c11671f489c47dc Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- 19 Sep, 2014 1 commit
-
-
hjk authored
Replace the CppModelManagerInterface/derived CppModelManager combo by a more common CppModelManager/CppModelManagerPrivate pimpl pattern. Change-Id: Ia4582845ed94d5ef60b8571bab9b2260c6290287 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 18 Sep, 2014 1 commit
-
-
Tobias Hunger authored
Make some C++ related methods available to the JsExpander. These are concerned with namespace handling, etc. Change-Id: I2fc3807cf421b817bb103b727606a78aee290652 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 25 Aug, 2014 1 commit
-
-
Nikolai Kosjar authored
This mainly takes CppEditorSupport apart. * Parsing is now invoked by CPPEditorDocument itself by listening to QTextDocument::contentsChanged(). * Upon construction and destruction CPPEditorDocument creates and deletes an EditorDocumentHandle for (un)registration in the model manager. This handle provides everything to generate the working copy and to access the editor document processor. * A CPPEditorDocument owns a BaseEditorDocumentProcessor instance that controls parsing, semantic info recalculation and the semantic highlighting for the document. This is more or less what is left from CppEditorSupport and can be considered as the backend of a CPPEditorDocument. CPPEditorDocument itself is quite small. * BuiltinEditorDocumentProcessor and ClangEditorDocumentProcessor derive from BaseEditorDocumentProcessor and implement the gaps. * Since the semantic info calculation was bound to the widget, it also calculated the local uses, which depend on the cursor position. This calculation got moved into the extracted class UseSeletionsUpdater in the cppeditor plugin, which is run once the cursor position changes or the semantic info document is updated. * Some more logic got extracted: - SemanticInfoUpdater (logic was in CppEditorSupport) - SemanticHighlighter (logic was in CppEditorSupport) * The *Parser and *Processor classes can be easily accessed by the static function get(). * CppHighlightingSupport is gone since it turned out to be useless. * The editor dependency in CompletionAssistProviders is gone since we actually only need the file path now. Change-Id: I49d3a7bd138c5ed9620123e34480772535156508 Reviewed-by:
Orgad Shaneh <orgads@gmail.com> Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 20 Aug, 2014 4 commits
-
-
Nikolai Kosjar authored
Change-Id: I554b5e9e3f1ef7c167fa45b5cd0c230fdf63073b Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
Nikolai Kosjar authored
Change-Id: If89e81eec6d600d3d39cc09203cf434d0768c1b4 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
Nikolai Kosjar authored
Change-Id: Ieff216017b9da1e6a12121688ea9572bdd81fd9b Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
Nikolai Kosjar authored
Change-Id: I447acf28849bffb52c1e6b6eafdde221ec0b179e Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 04 Jul, 2014 1 commit
-
-
Nikolai Kosjar authored
Change-Id: I199e912203f329ec9b8bed2eb105e4a56f729e7d Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 16 Jun, 2014 1 commit
-
-
Erik Verbruggen authored
And move it into its own header and source files. Change-Id: I37401badd819e028e1d767425759dc0ff27afe31 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 04 Jun, 2014 1 commit
-
-
Nikolai Kosjar authored
...since it does quite a bit more than only preprocessing, as the name suggests. We use that class to process source files in general. The output is not a preprocessed source, but a set of CPlusPlus::Documents with symbols. Change-Id: I787d0f22f9f042ddf0c99e8c2f0bdb9aa7001735 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 03 Jun, 2014 1 commit
-
-
Alessandro Portale authored
This image is used exclusively in the CppTools plugin, thus belong into CppTools resources. Change-Id: I8bbc553fb16897b74487ad27a941776b83f14d77 Reviewed-by:
Alessandro Portale <alessandro.portale@digia.com>
-
- 28 May, 2014 1 commit
-
-
Erik Verbruggen authored
This string table uniques strings, so that multiple identical strings share their contents. It is used by the locator and the symbol searcher, and will later be used by the class view. Change-Id: Ib8b50f69bbf994d0d7a39b66dc8caf1a3d9bfb42 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 26 Mar, 2014 1 commit
-
-
Nikolai Kosjar authored
Change-Id: I58acfb2d049dd4239a3f41b0a5795bfaab7b4f2f Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 07 Jan, 2014 1 commit
-
-
Nikolai Kosjar authored
Move common functionality of the 12 test classes into base classes. Change-Id: If64d3cec876807ac6f991151189860a99b8ff4ca Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 11 Dec, 2013 2 commits
-
-
Nikolai Kosjar authored
Mostly reordering files alphabetically. Change-Id: Ibad1fa75559218fe488d1b31c7200ba4ff6131fe Reviewed-by:
Orgad Shaneh <orgads@gmail.com> Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
Nikolai Kosjar authored
...and rename it to FunctionUtils. Change-Id: If076ec01fd82e8ba728764bdeab7e87e8bc1ff3b Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 12 Nov, 2013 1 commit
-
-
Nikolai Kosjar authored
Change-Id: I7a82f2b22105d4e096fc0bd69679adacdde2c731 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 01 Oct, 2013 1 commit
-
-
Erik Verbruggen authored
If two files from different (sub-)projects include the same header file, and the defined macros differ for both files, the header file will be parsed with only the appropriate macros for the including file. Task-number: QTCREATORBUG-9802 Task-number: QTCREATORBUG-1249 Change-Id: I560490afa287b3bb1e863bce1bb4f57af36ad56e Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 20 Sep, 2013 1 commit
-
-
Orgad Shaneh authored
Botan: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xutility:2227: warning: C4996: 'std::_Copy_impl': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators' c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\xutility:2212: see declaration of 'std::_Copy_impl' D:\dev\qt-creator\src\libs\3rdparty\botan\botan.cpp:7248: see reference to function template instantiation '_OutIt std::copy<const Botan::u32bit*,T*>(_InIt,_InIt,_OutIt)' being compiled with [ _OutIt=Botan::word *, T=Botan::word, _InIt=const Botan::u32bit * ] CppTools: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xutility:2873: warning: C4996: 'std::_Mismatch1': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators' C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\xutility:2856: see declaration of 'std::_Mismatch1' D:\dev\qt-creator\src\plugins\cpptools\symbolfinder.cpp:388: see reference to function template instantiation 'std::pair<_Ty1,_Ty2> std::mismatch<QString::const_iterator,QString::const_iterator>(_InIt1,_InIt1,_InIt2)' being compiled with [ _Ty1=QString::const_iterator, _Ty2=QString::const_iterator, _InIt1=QString::const_iterator, _InIt2=QString::const_iterator ] Change-Id: I09a477e755c4555101b064271f10c08a69576e33 Reviewed-by:
Christian Kandeler <christian.kandeler@digia.com> Reviewed-by:
David Schulz <david.schulz@digia.com> Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 13 Sep, 2013 1 commit
-
-
Erik Verbruggen authored
The model-manager now supports multiple code models for semantic highlighting and code completion, and will choose one based on the mime-type of the editor. The settings page is currently disabled. It will get enabled when a second plug-in lands that has a ModelManagerSupport class. Change-Id: I10023f52322ed6860397da15dba1c231e80e6517 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 10 Sep, 2013 1 commit
-
-
Erik Verbruggen authored
Both semantic highlighting and code-completion go hand-in-hand, so now the ModelManagerSupport class acts as a "factory" for the model manager. Depending on the mime-type of the document in the editor, the model manager will return the appropriate highlighter or code-completion engine. If none is registered, the built-in fall-back is used. Change-Id: I3e5dbb0e3b58e077dd5eda9aecb2ce5d448ac0b8 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 09 Sep, 2013 1 commit
-
-
Erik Verbruggen authored
This is step 1 of 2 for merging the various provider factories into a single class. Merging has the advantage that selecting based on editor (content) mime-type only has to select one class, instead of re-doing the selection for each class separately. Change-Id: I11f815151bd4769ae6028b636793d6a80d02e202 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 03 Sep, 2013 1 commit
-
-
Orgad Shaneh authored
Some projects use separate directories for sources and headers. An example tree: * |-- src |-- foo.cpp |-- include |-- foo.h Allow the user to specify directories for finding out-of-project related header/source files, in addition to current directory Task-number: QTCREATORBUG-8883 Change-Id: I57215c8f2feffcc246d0d161798290861bcfcdd4 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 30 Aug, 2013 1 commit
-
-
Nikolai Kosjar authored
Until now the locator filters CppLocatorFilter, CppClassesFilter and CppFunctionsFilter used unnecessarily their own SearchSymbols instance. The results were also saved separately, which was unfavorable since e.g. the functions and classes data could be shared. Starting with this patch an instance of LocatorData will serve all mentioned filters. This saves about 20MB of memory after indexing the Qt Creator project. Change-Id: I8a34b67eb9fe0e5c68ba6e7c8f576389c78efc6f Reviewed-by:
Thomas Hartmann <Thomas.Hartmann@digia.com> Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 22 Aug, 2013 1 commit
-
-
Nikolai Kosjar authored
Change-Id: Ia36e7e7142dbc030a428369ed04e76e70e8eef0b Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 20 Aug, 2013 1 commit
-
-
Nikolai Kosjar authored
Change-Id: I25f11e80747863f797d146980d8ee0e605acb6e5 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 19 Aug, 2013 1 commit
-
-
Nikolai Kosjar authored
Change-Id: Ie71aa8a39f4584a024a4f104841ad8e57947e489 Reviewed-by:
David Schulz <david.schulz@digia.com>
-
- 13 Aug, 2013 1 commit
-
-
Nikolai Kosjar authored
Change-Id: Ia679f3d2ae5fce0978a4e320fa18b28f1a7bed71 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 10 Jul, 2013 1 commit
-
-
Tobias Hunger authored
* Move basic ui code model support from CppTools into QtSupport * Use Kit infrastructure to retrieve uicCommand and environment * Remove specialization for cmake projects (no longer needed) * Remove specialization for qmake based projects (no longer needed) Change-Id: I8569cc01acb46a540883c2da235d169bebf7db39 Reviewed-by:
Daniel Teske <daniel.teske@digia.com>
-
- 11 Jun, 2013 1 commit
-
-
Nikolai Kosjar authored
...by detecting include groups (separated by new lines, include types and same dir prefix). Task-number: QTCREATORBUG-9317 Change-Id: I73e80fdc715104901cb2d4f5b15b4cab5d04d305 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- 26 Apr, 2013 1 commit
-
-
Erik Verbruggen authored
Change-Id: I399d667a1fccb376fadbd6ab8fbba243e86d8f4b Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- 10 Apr, 2013 1 commit
-
-
Tobias Hunger authored
Rename ModelManagerInterface.(h|cpp) to cppmodelmanagerinterface.(h|cpp). Rename TypeHierarchyBuilder.(h|cpp) to typehierarchybuilder.(h|cpp). Change-Id: I035d833fd205d7460819bd0fb7031294359032f9 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-