- Jan 13, 2016
-
-
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>
-
- Dec 16, 2015
-
-
Nikolai Kosjar authored
This removes also the need to close editor documents. Change-Id: I96c68105bceb37841053f3dbd8a264e059a02cb8 Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- Dec 02, 2015
-
-
Nikolai Kosjar authored
The translation unit was updated, but not re-registered. Handle the editor documents this way: 1. Reset all ClangEditorDocumentProcessors (this will send an unregister message, but that's not problematic). 2. For the visible editor documents, run their processors so that the translation units will be re-registered. 3. For the invisible editor documents, mark them dirty. Once the user makes an invisible document visible again, the processor will run and also re-register the translation unit. Change-Id: I23693ac197bd34a183f3a0020eb5372268636599 Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- Dec 01, 2015
-
-
Marco Bubke authored
We reparse first the current and then the visible translation units before we reparse all other units. The signals connections are queued to wait for the visible editor update. Change-Id: I5e2b8bc80568450268ca24e26720b3f5af640995 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- Nov 16, 2015
-
-
Nikolai Kosjar authored
Related to commit c47079f97f7d42db0c581525a2ce6fddbc0995f2 Clang: Activate the code model with a check box Change-Id: Ief11768ba0dd27788032e2dd3ad9b7ae39a8f52b Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- Nov 09, 2015
-
-
Nikolai Kosjar authored
...when acessing m_headerPaths, m_projectFiles or m_definedMacros from different threads. ensureUpdated() locked the mutex before writing the variables, but reading them happened with an unlocked mutex. Change-Id: I4951fd58f1939e4e50534a018dd600004789668e Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
- Oct 12, 2015
-
-
Nikolai Kosjar authored
...to it can be reused by other clients more easily. Also, in a follow-up change it will have a project part dependency that can be cleared inside the CppModelManager more easily. Change-Id: Ic9f2ce5212a94fd05ab0571e9ad99d0a25f5bc5c Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- Aug 31, 2015
-
-
Marco Bubke authored
Change-Id: Ica1a33b2619f64746b8671bff2856503775a40bf Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- Jul 20, 2015
-
-
Nikolai Kosjar authored
File paths are not unique since e.g. each qbs group in a file is mapped to a project part. Change-Id: I7df3f224dd23046b869f2588b8a34eb26cfc0b1a Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- Jul 08, 2015
-
-
Nikolai Kosjar authored
Needed for ClangCodeModel. If the content changes, we want to send it immediately to the codemodelbackend process. Change-Id: Iedf16930b494ccb5e91f1bc435db026067d98613 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com> Reviewed-by:
Daniel Teske <daniel.teske@theqtcompany.com>
-
- Jun 10, 2015
-
-
Nikolai Kosjar authored
This makes us independent of libclang crashes for completion. Re-parsing for highlighting still happens in the Qt Creator process. Run in verbose mode: qtc.clangcodemodel.ipc=true Run tests: -test "ClangCodeModel" Task-number: QTCREATORBUG-14108 Task-number: QTCREATORBUG-12819 Change-Id: Id3e95bd2afdb6508bbd1d35fddc69534a909b905 Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- Jun 03, 2015
-
-
Nikolai Kosjar authored
Needed for tests in ClangCodeModel. Change-Id: I58bdb35811776751a95b5db198ea8d6cdb0cd6de Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- Mar 05, 2015
-
-
Friedemann Kleint authored
Change-Id: I0144ac33e88980c431c54a6d69bbde28da4b1967 Reviewed-by:
Orgad Shaneh <orgads@gmail.com>
-
- Feb 09, 2015
-
-
Nikolai Kosjar authored
Change-Id: I1ea9f755fe0fc7053e2fb209de9301bcb1a81739 Reviewed-by:
Orgad Shaneh <orgads@gmail.com>
-
- Jan 30, 2015
-
-
hjk authored
Change-Id: I3bf9d65b73a4ab1619c8e48815792f35e2359f45 Reviewed-by:
hjk <hjk@theqtcompany.com>
-
- Jan 16, 2015
-
-
Eike Ziller authored
Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125 Reviewed-by:
Alessandro Portale <alessandro.portale@digia.com>
-
- Jan 14, 2015
-
-
Nikolai Kosjar authored
...and related functions. For clarity in client code. Change-Id: Icad6fc7b1eee2ce46a2eba8435359837a23409c8 Reviewed-by:
Orgad Shaneh <orgads@gmail.com> Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
- Dec 18, 2014
-
-
Erik Verbruggen authored
... by keying on Utils::FileName. Task-number: QTCREATORBUG-12390 Change-Id: Ib99eefcf3440d4383f624a614a3093f427efffbd Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- Dec 03, 2014
-
-
Nikolai Kosjar authored
...if the project was updated in the meanwhile. If a project is updated mark invisible editor documents dirty and update them if they get focus. This also fixes document highlighting when restoring a session for documents that the user "switched away" before the project info is pushed to CppModelManager. This completes CppTools: Update visible documents on project update commit c2eb91e0 which only takes care of visible documents. Task-number: QTCREATORBUG-13270 Change-Id: Id445e7f509deac5d03194aecc54ce4629b7926ce Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
- Oct 15, 2014
-
-
Nikolai Kosjar authored
With asynchron project managers, creating a new project from a wizard or re-opening a session will first open the editor documents and then provide the project information later (it's the other way around with synchronous project managers). This sequence leave the documents with various error diagnostics behind. Fixed by re-triggering the re-parsing. This change does not fix QTCREATORBUG-11606 yet. Though it will trigger a reparse with the right includes, clang still reports 'file not found'. Will be addressed by a follow-up patch. Task-number: QTCREATORBUG-11606 Change-Id: Ib5d251e05accf4268f9b36decc5224b2c75f610c Reviewed-by:
Daniel Teske <daniel.teske@digia.com> Reviewed-by:
Orgad Shaneh <orgads@gmail.com> Reviewed-by:
Fawzi Mohamed <fawzi.mohamed@digia.com>
-
- Oct 09, 2014
-
-
Eike Ziller authored
Change-Id: I3c22ef2685d7aa589f5d0ab74d693653a4c32082 Reviewed-by:
Alessandro Portale <alessandro.portale@digia.com>
-
- Oct 02, 2014
-
-
David Schulz authored
Change-Id: Ie6aaaa5d99ba3823d9d42331f45b2dcab397e1cd Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- Sep 26, 2014
-
-
hjk authored
*Document* and *Layout* classes, all basetext* files Change-Id: I1c6e376733a434fcb5c7f19c6210dfa031eeafde Reviewed-by:
Eike Ziller <eike.ziller@digia.com>
-
- Sep 25, 2014
-
-
hjk authored
First step of some more 'Base' removal in TextEditor. s/Core::TextDocument/Core::BaseTextDocument/ s/TextEditor::BaseTextDocument/TextEditor::TextDocument/ Change-Id: I71ba325a2f0ad72ec9dae0d96846cbae72d326f7 Reviewed-by:
hjk <hjk121@nokiamail.com>
-
- Sep 19, 2014
-
-
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>
-
Orgad Shaneh authored
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62224 .obj/release-shared/cppcodemodelinspectordialog.o: In function `CppEditor::Internal::CppCodeModelInspectorDialog::refresh()': cppcodemodelinspectordialog.cpp:(.text+0x79fc): undefined reference to `CppTools::Internal::CppModelManager::ensureUpdated()' .obj/release-shared/cppcodemodelinspectordialog.o: In function `CppTools::Internal::CppModelManager::definedMacros()': cppcodemodelinspectordialog.cpp:+0x26): undefined reference to `CppTools::Internal::CppModelManager::ensureUpdated()' .obj/release-shared/cppcodemodelinspectordialog.o: In function `CppTools::Internal::CppModelManager::headerPaths()': cppcodemodelinspectordialog.cpp: +0x26): undefined reference to `CppTools::Internal::CppModelManager::ensureUpdated()' Change-Id: Ie0e01f7628668cbbe11b701a93caef98bb8e335f Reviewed-by:
Adam Majer <adamm@zombino.com> Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com> (cherry picked from commit c023a1ca) Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com> Reviewed-by:
Eike Ziller <eike.ziller@digia.com>
-
- Sep 08, 2014
-
-
Orgad Shaneh authored
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62224 .obj/release-shared/cppcodemodelinspectordialog.o: In function `CppEditor::Internal::CppCodeModelInspectorDialog::refresh()': cppcodemodelinspectordialog.cpp:(.text+0x79fc): undefined reference to `CppTools::Internal::CppModelManager::ensureUpdated()' .obj/release-shared/cppcodemodelinspectordialog.o: In function `CppTools::Internal::CppModelManager::definedMacros()': cppcodemodelinspectordialog.cpp:+0x26): undefined reference to `CppTools::Internal::CppModelManager::ensureUpdated()' .obj/release-shared/cppcodemodelinspectordialog.o: In function `CppTools::Internal::CppModelManager::headerPaths()': cppcodemodelinspectordialog.cpp: +0x26): undefined reference to `CppTools::Internal::CppModelManager::ensureUpdated()' Change-Id: Ie0e01f7628668cbbe11b701a93caef98bb8e335f Reviewed-by:
Adam Majer <adamm@zombino.com> Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- Sep 04, 2014
-
-
Erik Verbruggen authored
This eliminates a bunch of list->set->list conversions. Especially the ProjectInfo::appendProjectPart takes lots of time converting for every part added. Change-Id: Ib3c8cd4b0ad6c012ccbeed12ebedd46b9b6cca95 Reviewed-by:
Daniel Teske <daniel.teske@digia.com>
-
- Aug 25, 2014
-
-
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>
-
- Aug 07, 2014
-
-
Nikolai Kosjar authored
Adding QTC_FIND_ERRORS_INDEXING=1 to the run environment will Creator force to do some "extended indexing" in order to find bugs: 1) The project files are parsed as if they would be opened in an editor. That is, parsing happens as precisely as possible, based on the ProjectPart information. 2) Symbols are looked up by invoking CheckSymbols, the backend of the semantic highlighter. 3) A "Task List File" (*.tasks) will be written with all diagnostic messages. This special indexing mode is meant for testing purposes. E.g. it can be run nightly on some bigger projects to find regressions. Note that Qt Creator will quit exactly after the first time some source files are indexed. E.g. that will happen if you open a file manually or if you open a new unconfigured project. Therefore it's required to configure projects as needed before invoking in this indexing mode. Change-Id: If25b83e67d24df9e28e107cb062f21cbf3b4c643 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- Jul 04, 2014
-
-
Erik Verbruggen authored
Instead of having two lists of paths, now only one list is used where both include paths and framework paths can be mixed. This reflects the way the compiler is invoked, and retains the (correct) search order. Task-number: QTCREATORBUG-11599 Change-Id: I373953e3e305df5b7a0d10920e12d146584adf9f Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- Jun 18, 2014
-
-
Erik Verbruggen authored
Change-Id: Iac6c9fe1ada27ac0d96417e490cc5723e6969541 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- Jun 12, 2014
-
-
Nikolai Kosjar authored
...instead an ITextEditor. The ITextEditor was only used to access the file path and QTextDocument via the BaseTextEditorWidget. Change-Id: Idef2b8162b992fe3718e16e2a046e2ff214846f2 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
Nikolai Kosjar authored
No need to pass more than needed. Change-Id: I047cc44f17342999e0809d022df35ba9a4a8dfb8 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- Jun 10, 2014
-
-
Nikolai Kosjar authored
Change-Id: I83c0bbcf221fd163cd2514a9d23983b82e1f04fd Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
Nikolai Kosjar authored
Unexports CppModelManager, CppSourceProcessor and CppToolsPlugin. Now only some constructor signatures mention "Internal::" in the exported symbols: % nm --extern-only --demangle ./lib/qtcreator/plugins/libCppTools.so | grep "Internal::" CppTools::CppClassesFilter::CppClassesFilter(CppTools::Internal::CppLocatorData*) CppTools::CppClassesFilter::CppClassesFilter(CppTools::Internal::CppLocatorData*) CppTools::CppEditorSupport::CppEditorSupport(CppTools::Internal::CppModelManager*, TextEditor::BaseTextEditor*) CppTools::CppEditorSupport::CppEditorSupport(CppTools::Internal::CppModelManager*, TextEditor::BaseTextEditor*) Change-Id: I167c21a6dc03cf02230c95fde66cf404e40df36f Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- May 21, 2014
-
-
Orgad Shaneh authored
Change-Id: I3e703c923f6e1a14a89c76f394a070184db0c7bf Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-
- Mar 26, 2014
-
-
Nikolai Kosjar authored
Among others the timestamp and if provided, some extra id. Change-Id: I017c2af197023347c88f2547e7bda8f22b3d00c4 Reviewed-by:
Erik Verbruggen <erik.verbruggen@digia.com>
-
- Feb 19, 2014
-
-
Fawzi Mohamed authored
Currently ModelManager contains lot logic, but as it sits in QmlJSTools it is not possible to use it in standalone tests. Moving most of the logic to ModelManagerInterface (and cleanup) to allow better testing, and refactoring. This introduces a dependency of the qmljs lib on the cplusplus lib Also a (small) part of the CppTool::ModelManagerInterface has been moved to CPlusPlus::CppModelManagerBase to remove the dependency on CppTools to gather the Qml types exposed from C++. Change-Id: Icad7fe96dfd0f1a2b1058d82bd98c77c40aa5e9d Reviewed-by:
Fawzi Mohamed <fawzi.mohamed@digia.com>
-
- Jan 08, 2014
-
-
Robert Loehning authored
Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a Reviewed-by:
Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by:
Kai Koehne <kai.koehne@digia.com>
-