Commit Graph

1454 Commits

Author SHA1 Message Date
Oswald Buddenhagen
671587ebb4 move cpptools => locator dependency to cpptools_dependencies.pri
it belongs there.

Change-Id: I2d05287b90476ba1fde5ddda282f5a2b1766f6a2
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-03-27 16:20:53 +01:00
Sergey Shambir
f29902d33a CppTools: fixed bugs in change 49602
Change-Id: I14e9bbfea1bca58cdc49212b7ad1d880ab908ec8
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-03-27 10:36:13 +01:00
Christian Kandeler
8d5ae76eda CppTools: Remove redundant debug operator declaration.
Change-Id: Iee594c1e615ef9ce3899f399aa0dad32240e5cac
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-03-25 17:24:23 +01:00
Christian Kandeler
0a27f03264 CppTools: Fix qbs build.
Change-Id: Iab88214089c48e73c9dbc4e0b0cfded734e0be13
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-03-25 14:53:19 +01:00
Christian Kandeler
423ff9b37a CppTools: Fix build with namespaced Qt.
Change-Id: Idec32131c20b91c3d08ac16fbcc1c14ee5ede450
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-03-25 14:22:48 +01:00
Sergey Shambir
63fe568b9b CppTools: improved languages support in ProjectPart
Please, read blueprint here:
http://qt-project.org/wiki/Blueprint-for-language-specs-system

Removed feature from QbsProjectManager: it not longer splits project on
separate C and C++ parts, because Qt version used only by clang parser
(not native) and can be ignored for pure C and Objective-C without C++.

Change-Id: I1c561f7f9f915cc6cb8579d19db74e8352f54c1e
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-03-21 17:22:18 +01:00
Nikolai Kosjar
da8d2235b0 CppTools: Simplify testing of typical use cases
Change-Id: I7ccb09bb8e1d2327f206640cd8c9090164a5f146
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-03-20 13:45:35 +01:00
Nikolai Kosjar
947207c802 C++: Fix dangling IDocument* in CppCompletionAssistProcessor
Steps to reproduce the crash:
 1. Open some long file, e.g. botan.cpp
 2. Trigger completion and close editor immediately

The IDocument pointer was only used to reference the file name. Instead
of passing an IDocument* to the IAssistInterface, pass the file name.

Change-Id: Iafce9b818806a77968a10541114bc9b7c8665f11
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-03-19 14:12:11 +01:00
Eike Ziller
99b2eb1ca9 Merge remote-tracking branch 'origin/2.7'
Conflicts:
	doc/src/debugger/qtquick-debugger-example.qdoc

Change-Id: If9a6ac2db76773c50aae26c5156e6aa2603329b3
2013-03-18 10:19:14 +01:00
Erik Verbruggen
bdb5142102 C++: use argumentCount in loops in initializer.
argumentCount is a more expensive function, so try to call it only once,
esp. in loops.

Change-Id: I6f0d420352743ec444487ce3f506ef28e5282d1e
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-03-15 15:46:09 +01:00
jkobus
f4cfa822ff Avoid crash on qmljs plugin unload
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>
2013-03-12 16:22:12 +01:00
Friedemann Kleint
cb08f959b9 Fix Krazy warnings about includes/header guards in Cpp-Editor.
Change-Id: I00a68d7f2b509e3934c3248765a78e9b47749127
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-03-12 16:18:59 +01:00
Erik Verbruggen
b36a53cd19 C++: use QMutexLocker everywhere in the model manager.
Change-Id: Iab4dee2a607d453b3e80fe591b70329ab48d27a9
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-03-08 15:00:14 +01:00
Eike Ziller
f60873a24f Merge remote-tracking branch 'origin/2.7'
Conflicts:
	qtcreator.pri
	qtcreator.qbs

Change-Id: Ie71d0d5aebdd1406d94de348bcd4cfcc203a1ba9
2013-03-08 11:39:33 +01:00
Friedemann Kleint
934bccbc7e Fix Krazy-warnings in CppTools.
- values or keys iteration
- non-const ref iterator

Change-Id: I6bb58793b3155243e0fbfaf33ee43ce60edea8d1
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-03-08 10:56:12 +01:00
Erik Verbruggen
45656335fc C++: Change the locator filter to queue changed documents.
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>
2013-03-07 14:23:04 +01:00
Erik Verbruggen
4cf1ccd161 C++: Fix semantic highlighter and tests.
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>
2013-03-04 13:16:50 +01:00
Erik Verbruggen
4e285a1186 C++: Cleanup: make the snapshot private in CppPreprocessor.
Change-Id: I69e892de34e06a0c95b3218abd8a0bb72966d875
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-02-27 10:43:42 +01:00
Erik Verbruggen
2d3d53a011 C++: Fix/tune semantic highlighter result chunk size.
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>
2013-02-26 14:54:47 +01:00
Przemyslaw Gorszkowski
798d84b391 C++: fix 'using' for templates in typedefs
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>
2013-02-21 16:44:13 +01:00
Przemyslaw Gorszkowski
ea32191542 C++: fix instantiation of template special. with pointer argument
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>
2013-02-21 16:32:25 +01:00
Knut Petter Svendsen
c937226db1 C++: Improved automatic Doxygen comment blocks with CppStyle
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>
2013-02-21 13:34:25 +01:00
Tobias Hunger
1951c86395 Reduce padding in often-used structs
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>
2013-02-21 13:22:21 +01:00
Przemyslaw Gorszkowski
2b0e643e3d C++: fixed resolving complex typedef
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>
2013-02-20 09:58:34 +01:00
Erik Verbruggen
75e608ec2e C++: Cleanup, removed unused methods/fields.
Change-Id: I5636039c79be40505c707f775b228bc51f35c243
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-02-19 14:34:48 +01:00
Nikolai Kosjar
35b4420f7a Editor: Add further Use::isInvalid() guards
Task-number: QTCREATORBUG-8738

Change-Id: I297731f15bd9001f7edc83c956a15ef660929dc7
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-02-19 10:18:34 +01:00
Nikolai Kosjar
9f94a8b3b8 C++: Slim down SemanticInfo
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>
2013-02-19 10:18:25 +01:00
Leena Miettinen
ccbadb2d37 UI text: fix caps in CPP plugin actions
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>
2013-02-15 15:20:37 +01:00
David Schulz
6ef0cf1a30 Editor: Refactor Open Link in Next Split.
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>
2013-02-14 09:46:16 +01:00
Nikolai Kosjar
aafbf2eaf0 C++: Make pointer declaration formatter more robust
- 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>
2013-02-12 11:49:07 +01:00
Robert Loehning
234b4bd928 Fixed quotes
Change-Id: Ia35af9397fe64f4bcf48717830a1a25f4d8c6c36
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
2013-02-11 15:52:53 +01:00
Przemyslaw Gorszkowski
4c800b1b5a C++: fix code completion for typedef of pointer
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>
2013-02-11 10:27:47 +01:00
Leena Miettinen
419c6de735 Doc: replace deprecated QDoc commands
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>
2013-02-06 09:44:18 +01:00
Erik Verbruggen
87a78cddff C++: fix find/rename macro usages.
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>
2013-02-01 13:40:03 +01:00
Przemyslaw Gorszkowski
858cb6e348 C++: instantiate template with default argument
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>
2013-02-01 13:36:03 +01:00
Robert Loehning
a040424d2a Incremented year in copyright info
Change-Id: Ia11f4d7a94465de7f12cc390855e54e3256e5455
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-02-01 09:19:26 +01:00
Przemyslaw Gorszkowski
21500d54b7 C++: fix replacing dot(.) with arrow(->)
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>
2013-02-01 09:16:15 +01:00
Oswald Buddenhagen
1fda2111d4 Merge remote-tracking branch 'origin/2.6'
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
2013-01-31 16:25:33 +01:00
Przemyslaw Gorszkowski
ffba28d26a C++: Fix code compl. for instantiation of template specialization
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>
2013-01-30 18:49:25 +01:00
Erik Verbruggen
0135609973 C++: changed field names of the preprocessor.
Change-Id: I9b199df863b404e4cb2ce3c76c920b9010c09260
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-01-30 17:58:21 +01:00
Erik Verbruggen
fa48a36cba C++: undo accidental rename of struct TestData to TestCase.
This was done in 72db7a8f52.

Change-Id: I9b5d2b50de5dbd929c53e2ca0a70bce239c878ad
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-01-30 11:39:22 +01:00
Erik Verbruggen
cede294788 C++: add test-case for member access replacement in completion.
Change-Id: Id5fe00b94a6622178db9bd26f54d29efe88970f7
Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-01-30 10:29:12 +01:00
Erik Verbruggen
5721847a57 C++: Fix possible null-pointer access.
Change-Id: Id42bb1cbf109cac8ab868ab7381a54d6be9a7697
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-01-30 09:08:20 +01:00
Przemyslaw Gorszkowski
7db3b660b6 C++ editor: Highlight member variable
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>
2013-01-29 17:33:42 +01:00
Robert Loehning
298531e370 Incremented year in copyright info
Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-01-29 16:27:03 +01:00
Przemyslaw Gorszkowski
7fcc52bf47 C++ editor: Highlighting static variables
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>
2013-01-29 14:01:11 +01:00
Friedemann Kleint
8bb0134c50 tr()-Fixes: Fix translation contexts.
Change-Id: Ic043a097947a80e2fb5cb381c585375c4e5f5eef
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-01-29 13:58:36 +01:00
Nikolai Kosjar
370acaf502 C++: Tests: Add basic tests for CheckSymbols
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>
2013-01-29 09:09:15 +01:00
Thorbjørn Lindeijer
c08fd3a2ec Fixed typo 'mimeDatase' -> 'mimeDatabase'
Change-Id: Id2ff2fb1e5e009fd267c7fcacf59e9a4ad6f2364
Reviewed-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2013-01-24 18:08:24 +01:00
Erik Verbruggen
72db7a8f52 CppEditor: quick fix to generate getters and setters
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>
2013-01-24 16:18:16 +01:00