summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools
Commit message (Collapse)AuthorAgeFilesLines
* C++: Handle recursive using/typedef declarationsNikolai Kosjar2013-06-252-0/+142
| | | | | | | | | Remember using/typedef declarations we have already looked up and stop if we try it again. Change-Id: I91bf0aef4df18539a47d015f0113543aef1f692a Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com> (cherry picked from commit 50a900e509be2e1f448f29be126ba3b7f8173901)
* C++: Handle recursive auto declarationsNikolai Kosjar2013-06-252-0/+55
| | | | | | | | | | | | Remember auto declarations we have already looked up and stop if we try it again. Task-number: QTCREATORBUG-9503 Change-Id: I989b11609c98bf197ce916d79c9d452294355053 Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com> (cherry picked from commit 8f1b6656677344e9ca4b6798ddd900725c478b16)
* rename ProductModule into ExportJoerg Bornemann2013-05-271-1/+1
| | | | | | | | This fixes a bunch of warning when building with the updated qbs version. Change-Id: I644b4a4d0225b2e23ff1d9e1bf6d9d0136d6bbb5 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* C++: fix crash during code completion with base template classPrzemyslaw Gorszkowski2013-05-242-0/+35
| | | | | | | | | ResolveExpression has to have a reference of ContextLookup. If not there will be a crash because of deleted instanitated base template class. Task-number: QTCREATORBUG-9329 Change-Id: I7f8c83da0d81ac6311e76d15a897adbc70b08d75 Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* C++: Fix crash in code completion.Erik Verbruggen2013-05-031-2/+2
| | | | | | | | | | Caused by a dangling pointer of a template instantiation which had been cloned into the wrong control. The fix is to remove that control and refer to the control of the bindings (which is the correct one). Change-Id: I951a60f2e613aae1e4ac901ce99c820212018709 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* UicCodeModelSupport: Make the code not so eager to run uic processesDaniel Teske2013-05-023-15/+45
| | | | | | | | | Instead mostly postpone it until the contents are needed. Task-number: QTCREATORBUG-9149 Change-Id: I83167537e97fbd965531d990c8073409ff7b0b32 Reviewed-by: Eike Ziller <eike.ziller@digia.com>
* C++: fixed code completion for namespace aliasesPrzemyslaw Gorszkowski2013-04-103-1/+51
| | | | | | | | | Task-number: QTCREATORBUG-166 Change-Id: I7a19065a57bfb943e5fc4e2bd9bd81988c1175e3 Reviewed-by: Sergey Shambir <sergey.shambir.auto@gmail.com> Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* C++: name of function of class problemPrzemyslaw Gorszkowski2013-04-102-0/+16
| | | | | | | | | | | | | | | | | | | | | It fixes: * highlighing * find usage * follow symbol when function of class has the same name as: * local variable * template parameter * other struct/union/class/enum * function argument in function scope. Task-number: QTCREATORBUG-8902 Change-Id: Iddc0f764af689babb40d39460d174bac7b919b31 Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Sergey Shambir <sergey.shambir.auto@gmail.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* Avoid crash on qmljs plugin unloadjkobus2013-03-121-0/+5
| | | | | | | | | | The unload of qmljs plugin caused qmljs code style settings to be deleted, while core still had a pointer to them and used it afterwards. Added unregisterCodeStyle* methods for symmetry and used them on plugin destruction. Change-Id: I49f0fc52f3e71d053e6ada604672a4cc3eafa486 Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
* C++: Change the locator filter to queue changed documents.Erik Verbruggen2013-03-074-14/+62
| | | | | | | | | | The changed documents get searched for symbols when either a limit of 10 pending documents is reached, or when the filter is asked to return all matches. Change-Id: Ic18fc66b0a802165fdd8a028bd13d0ce11524510 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com> Reviewed-by: Eike Ziller <eike.ziller@digia.com>
* C++: Fix semantic highlighter and tests.Erik Verbruggen2013-03-041-2/+5
| | | | | | | | Fixed the chunk size calculation, made the sorting more stable, and fixed the tests. Change-Id: I81fcffbf2ce9b63dd81f1a0e251200a31220db88 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* C++: Cleanup: make the snapshot private in CppPreprocessor.Erik Verbruggen2013-02-273-9/+11
| | | | | Change-Id: I69e892de34e06a0c95b3218abd8a0bb72966d875 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* C++: Fix/tune semantic highlighter result chunk size.Erik Verbruggen2013-02-262-5/+13
| | | | | | | | | | | | The fix: when finished with a FunctionDefinition, only flush when the number of usages reaches the chunk size. This should prevent a lot of chunks with a low number of usages for files with short methods. The tuning: for files larger than 10000 lines, use a larger chunk size to prevent the UI thread from having to re-layout/re-paint too often. Change-Id: I419174d306b8380c6fa8402825767e26c73f62ec Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* C++: fix 'using' for templates in typedefsPrzemyslaw Gorszkowski2013-02-212-0/+107
| | | | | | | | | | | | Fix resolving typedef of templates which is from different namespace and there was 'using' used for it. Examples are in tests. Another step to bring code completion for stl containters. Task-number: QTCREATORBUG-7978 Change-Id: I2e9e71b45d60536c1e25cf2d371c4719b15edf79 Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* C++: fix instantiation of template special. with pointer argumentPrzemyslaw Gorszkowski2013-02-212-0/+34
| | | | | | | | | | | | | | | | Fixed code completion for instantiation of template specialization with argument as pointer, e.g.: template <typename T> struct Template { T variable; }; template <typename T> struct Template<T *> { T *pointer; }; Template<int*> templ; templ.pointer; Change-Id: I7c79fe0cd7119b1208f064aece0cafdf50e1a012 Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* C++: Improved automatic Doxygen comment blocks with CppStyleKnut Petter Svendsen2013-02-213-7/+23
| | | | | | | | | Added support for CppStyle for Doxygen block generation when hitting enter after a /// or //! comment. Previously only QtStyle and JavaStyle was supported. Change-Id: Ib010e55ba602127a6842ba02034fbe85994ee2bd Reviewed-by: David Schulz <david.schulz@digia.com>
* Reduce padding in often-used structsTobias Hunger2013-02-212-2/+2
| | | | | | | | | | Reduce the padding in some often-used structs for 64bit machines. 32bit machines should also profit from most changes, but to a lesser degree. Change-Id: Ic4c67b94e962731de4f31164c52a372d78944ccc Reviewed-by: Tobias Hunger <tobias.hunger@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* C++: fixed resolving complex typedefPrzemyslaw Gorszkowski2013-02-202-0/+44
| | | | | | | | Unit test describe this complex typedef. Another step to bring code completion for stl containers. Change-Id: I27985c4ea7c26c723d7a88ce42c5ecf164b6c903 Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* C++: Cleanup, removed unused methods/fields.Erik Verbruggen2013-02-193-5/+0
| | | | | Change-Id: I5636039c79be40505c707f775b228bc51f35c243 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* Editor: Add further Use::isInvalid() guardsNikolai Kosjar2013-02-192-3/+3
| | | | | | | | Task-number: QTCREATORBUG-8738 Change-Id: I297731f15bd9001f7edc83c956a15ef660929dc7 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* C++: Slim down SemanticInfoNikolai Kosjar2013-02-194-20/+2
| | | | | | | | | | Remove SemanticInfo::hasD and SemanticInfo::hasQ. They were used in CPPEditorWidget::highlightUses() but became superfluous by filtering out invalid Uses. Change-Id: I08f46e55cf42fbc6088fbcb03e30822421df57d6 Reviewed-by: hjk <hjk121@nokiamail.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* UI text: fix caps in CPP plugin actionsLeena Miettinen2013-02-151-1/+1
| | | | | | | | | Use book style capitalization, which means that prepositions less than 4 characters long are written in lower case. Change-Id: I6d46a2513070897929cf1a8af2943a17d8e52b2d Reviewed-by: David Schulz <david.schulz@digia.com>
* Editor: Refactor Open Link in Next Split.David Schulz2013-02-143-26/+19
| | | | | | | | | | | Cleanup code and added shortcuts and menu entries for - open header/source in next split - follow symbol under cursor in next split - open declaration/definition in next split Change-Id: I2c4347749d26669d88b7c2968f30f60710f442b1 Reviewed-by: Petar Perisin <petar.perisin@gmail.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* C++: Make pointer declaration formatter more robustNikolai Kosjar2013-02-124-21/+204
| | | | | | | | | - Abort on expanded tokens - Abort on simple declarations starting with "class"/"struct"/"enum" - Abort if rewritten declaration does not contain '*'/'&' Change-Id: Ifddb6f20d6bc5c0afc3fcd1d742615198515a04c Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* Fixed quotesRobert Loehning2013-02-111-2/+2
| | | | | Change-Id: Ia35af9397fe64f4bcf48717830a1a25f4d8c6c36 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
* C++: fix code completion for typedef of pointerPrzemyslaw Gorszkowski2013-02-112-0/+90
| | | | | | | | | | Fix code completion and highlighting member of typedefed pointers. It works when typedef is inside or outside of the function. Task-number: QTCREATORBUG-8671 Task-number: QTCREATORBUG-8672 Change-Id: I9cc87080bf443f7ffa6a90ef5ba582b87700f2db Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* Doc: replace deprecated QDoc commandsLeena Miettinen2013-02-061-3/+3
| | | | | | | | | | The \i and \o commands were replaced with \li and \bold was replaced with \b in QDoc for Qt 5. The \input command was replaced with \include in the docs. Change-Id: I257d1bebb8ebc739ca20e0d29fcf0406ecb14534 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* C++: fix find/rename macro usages.Erik Verbruggen2013-02-011-4/+5
| | | | | | | | The replace button was not connected. Also made the search restarting slightly more robust. Change-Id: Iad7aea436749c0bda6ec4f58776e73b598a12a23 Reviewed-by: Christian Stenger <christian.stenger@digia.com>
* C++: instantiate template with default argumentPrzemyslaw Gorszkowski2013-02-012-0/+75
| | | | | | | | Fix code completion for instantiation of template with default argument Change-Id: I57b0306cc4540400ae83724db6c8b6b1aa67c255 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* Incremented year in copyright infoRobert Loehning2013-02-014-4/+4
| | | | | Change-Id: Ia11f4d7a94465de7f12cc390855e54e3256e5455 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* C++: fix replacing dot(.) with arrow(->)Przemyslaw Gorszkowski2013-02-012-0/+58
| | | | | | | | | Fix replacing operator dot(.) with operator arrow(->) for typedef pointer. Task-number: QTCREATORBUG-8488 Change-Id: Ic4462bc437a4aa37adfed4fa50b32d9bc20fe194 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* Merge remote-tracking branch 'origin/2.6'Oswald Buddenhagen2013-01-3182-82/+82
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/autotoolsprojectmanager/AutotoolsProjectManager.pluginspec.in src/plugins/debugger/qtmessageloghandler.cpp src/plugins/debugger/qtmessagelogwindow.cpp src/plugins/madde/maemodeployconfigurationwidget.cpp src/plugins/qmldesigner/components/integration/designdocumentcontroller.cpp src/plugins/qmldesigner/designercore/include/widgetqueryview.h src/plugins/qmldesigner/designercore/metainfo/metainfoparser.cpp src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.h src/plugins/qmlprojectmanager/qmlprojectapplicationwizard.cpp src/plugins/qnx/bardescriptormagicmatcher.h src/plugins/qt4projectmanager/profilekeywords.cpp src/plugins/remotelinux/deployablefilesperprofile.cpp src/plugins/remotelinux/deployablefilesperprofile.h src/plugins/remotelinux/deploymentinfo.cpp src/plugins/remotelinux/deploymentsettingsassistant.cpp src/plugins/remotelinux/profilesupdatedialog.cpp tests/auto/icheckbuild/ichecklib.cpp tests/auto/icheckbuild/parsemanager.cpp tests/auto/icheckbuild/parsemanager.h Change-Id: Ie465a578446a089e1c502d1cb1096e84ca058104
| * Incremented year in copyright infov2.6.2Robert Loehning2013-01-2981-81/+81
| | | | | | | | | | Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* | C++: Fix code compl. for instantiation of template specializationPrzemyslaw Gorszkowski2013-01-302-0/+37
| | | | | | | | | | | | | | | | | | | | | | It works for full specialization. Instantiate of the partial specialization has to be implemented(finding appropriate partial specialization-on going) Added unit test. Change-Id: I8ef5ea963e7c665e0d67d390b3a833486773dab0 Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* | C++: changed field names of the preprocessor.Erik Verbruggen2013-01-303-14/+14
| | | | | | | | | | Change-Id: I9b199df863b404e4cb2ce3c76c920b9010c09260 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* | C++: undo accidental rename of struct TestData to TestCase.Erik Verbruggen2013-01-301-19/+19
| | | | | | | | | | | | | | This was done in 72db7a8f5238fe3c2bce1fa1870ba729126745f8. Change-Id: I9b5d2b50de5dbd929c53e2ca0a70bce239c878ad Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* | C++: add test-case for member access replacement in completion.Erik Verbruggen2013-01-304-27/+55
| | | | | | | | | | | | Change-Id: Id5fe00b94a6622178db9bd26f54d29efe88970f7 Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* | C++: Fix possible null-pointer access.Erik Verbruggen2013-01-301-1/+1
| | | | | | | | | | Change-Id: Id42bb1cbf109cac8ab868ab7381a54d6be9a7697 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* | C++ editor: Highlight member variablePrzemyslaw Gorszkowski2013-01-291-1/+5
| | | | | | | | | | | | | | | | | | | | Highlight member variable when there is also enum value with the same name Task-number: QTCREATORBUG-7525 Change-Id: I0990844a20fdf9e87a807fde10708344b9c3497b Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* | C++ editor: Highlighting static variablesPrzemyslaw Gorszkowski2013-01-291-0/+4
| | | | | | | | | | | | | | | | | | Fix highlighting, find usages, marking for static variables. Task-number: QTCREATORBUG-6822 Change-Id: I0c97c93c6c1024550907eec3820496df22a94e85 Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* | tr()-Fixes: Fix translation contexts.Friedemann Kleint2013-01-291-1/+1
| | | | | | | | | | Change-Id: Ic043a097947a80e2fb5cb381c585375c4e5f5eef Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* | C++: Tests: Add basic tests for CheckSymbolsNikolai Kosjar2013-01-291-1/+3
| | | | | | | | | | | | | | | | | | CheckSymbols is the "data provider" for the semantic highlighter which does not have any tests yet. Change-Id: I868aca32d44570457a984b8ce74695c381c58bed Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* | Fixed typo 'mimeDatase' -> 'mimeDatabase'Thorbjørn Lindeijer2013-01-241-12/+12
| | | | | | | | | | Change-Id: Id2ff2fb1e5e009fd267c7fcacf59e9a4ad6f2364 Reviewed-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
* | CppEditor: quick fix to generate getters and settersErik Verbruggen2013-01-242-26/+44
| | | | | | | | | | | | | | | | | | | | This does not take namespaces on the implementation side into account and does not properly position/indent things. Task-number: QTCREATORBUG-1890 Change-Id: I779d12fefc79521bce38361729d4f66dada71147 Reviewed-by: hjk <hjk121@nokiamail.com> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* | CppTools: Fix qbs buildOrgad Shaneh2013-01-241-2/+1
| | | | | | | | | | | | | | Global include is wrong Change-Id: I34848ba4b92cfa047854abd476ed983f205bdf72 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
* | C++: Add settings dialog for pointer declaration formattingNikolai Kosjar2013-01-244-13/+283
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The dialog is at Tools > Options > C++ > Code Style > Edit... > Pointers and References. Currently the settings are referenced when applying the following QuickFixes: - Adapting function signature in declaration/definition (FunctionDeclDefLink) - Inserting declaration from definition (InsertDeclOperation) - Inserting definition from declaration (InsertDefOperation) - Extracting a function (ExtractFunctionOperation) - Add Local Declaration (AddLocalDeclarationOp::Operation) In these cases the code style of the current project is used. If there is no current project open, the current global code style is used. Task-number: QTCREATORBUG-6169 Change-Id: I3e4e502b3103f7f754ac9b39594ad461d89d9304 Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* | C++: Introduce PointerDeclarationFormatterNikolai Kosjar2013-01-246-6/+1136
| | | | | | | | | | | | | | | | | | | | | | For a given AST, CppRefactoringFile and Overview this will create a ChangeSet for rewriting the pointer or reference declaration according to the Overview. Task-number: QTCREATORBUG-6169 Change-Id: If6f824c1ea5e9f53a11a58ec8b6d696d01f0723e Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* | C++: test for walking includes in frameworks.Erik Verbruggen2013-01-242-0/+47
| | | | | | | | | | | | Change-Id: Id31ce6b40d72351cfaefa5035469b87662526853 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* | Highlight macro definitions like other uses.Francois Ferrand2013-01-231-1/+11
| | | | | | | | | | Change-Id: I5a0852e5c1e154b52d712f1dfcfe2fc04e0eb9fb Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* | C++ editor: support nested class of enclosing templatePrzemyslaw Gorszkowski2013-01-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Fixing: * highlighting * tooltips * find usage * selecting Task-number: QTCREATORBUG-8245 Change-Id: I6e900799e43126706125b7e424567fca2b2c223e Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>