Commit Graph

929 Commits

Author SHA1 Message Date
Christian Kamm
6f3dc3198c C++ editor: Prefer to use extra selections to find diagnostics.
Change-Id: I5f1c6e29c8386018cfd4d45d8ee63fc3e24311f6
Reviewed-on: http://codereview.qt.nokia.com/3484
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-08-25 14:38:08 +02:00
Christian Kamm
93e367ed0c C++: Don't strip comments from preprocessed source code.
Change-Id: I3a4817d36b9c724abca504c42914a73f97ab34c7
Reviewed-on: http://codereview.qt.nokia.com/3480
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-08-25 13:20:09 +02:00
Christian Kamm
27d0830698 QmlJS: Move the exported-C++-type detection out of C++ code.
It now lives in qmljstools/qmljsfindexportedcpptypes, all in one place.

Also ensures that the source code is available when a file is being
scanned for QML exports. This will enable checking comments for
annotations about the URI a plugin is usually imported as.

Change-Id: I1da36d0678e0a8d34b171dbe0f6b5690d89eb18b
Reviewed-on: http://codereview.qt.nokia.com/3392
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
2011-08-24 12:13:41 +02:00
Christian Kamm
8a6d767a8f Refactoring changes: Cleanup and improvements.
Previously RefactoringFiles were usually passed around by value.
However, since a RefactoringFile may sometimes own a QTextDocument
(when it was read from a file), that's not great and caused the
file to be reread after every copy.

With this change RefactoringFile becomes noncopyable and is always
owned by a shared pointer.

This change also allowed having const RefactoringFiles which is
useful because they can be safely used from other threads. See
CppRefactoringChanges::fileNoEditor.

Change-Id: I9045921d6d0f6349f9558ff2a3d8317ea172193b
Reviewed-on: http://codereview.qt.nokia.com/3084
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-08-19 11:12:09 +02:00
Friedemann Kleint
6a6af5a59c Header cleanup in various plugins.
Change-Id: I16b273cc792bfd2035d35e7c67675f039cd387b9
Reviewed-on: http://codereview.qt.nokia.com/3185
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-08-18 15:05:00 +02:00
Christian Kamm
8f14bc0ea2 C++: Synchronize function decl/def refactoring.
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>
2011-08-16 11:13:12 +02:00
Jarek Kobus
be40d9ca93 Apply code style settings to templates
Task-number: QTCREATORBUG-169

Change-Id: I380c956d3256c186ff9497463ab845228017ff87
Reviewed-on: http://codereview.qt.nokia.com/2671
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-08-09 12:01:06 +02:00
Christian Kamm
815d9cb14d C++ completion: Minimize qualified names in function signatures.
Change-Id: I8e2c38e279952372b3e12f6ea8da18b75b39a5d4
Reviewed-on: http://codereview.qt.nokia.com/2733
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-08-08 14:48:03 +02:00
Christian Kamm
6fe8d74af8 C++ insert definition: Find better insertion point.
Change-Id: Ic424ae7ed4ac6dcda5d96353071ba0415c1815da
Reviewed-on: http://codereview.qt.nokia.com/2732
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-08-08 14:47:56 +02:00
Jarek Kobus
0c8df0597f Refactor: Get rid of BaseTextEditorWidget from Indenter
Provide directly TabSettings instead.
This will be used for indenting a text for which
there is no editor instance.

Change-Id: Ia5f11a481f42464cf4820efdf2c7c4c32166f55e
Reviewed-on: http://codereview.qt.nokia.com/2622
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-08-05 10:29:41 +02:00
Eike Ziller
e5ca4b3462 Merge remote-tracking branch 'origin/2.3'
Conflicts:
	qtcreator.pri
	share/qtcreator/dumper/dumper.py
	share/qtcreator/qml/qmlpuppet/instances/objectnodeinstance.h
	src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
	src/plugins/valgrind/valgrind.pro
	tests/manual/gdbdebugger/simple/simple_gdbtest_app.cpp

Change-Id: Ic2d347012d89d697e6382f156e64f9619da88300
2011-07-15 14:29:07 +02:00
hjk
82bbac7f90 Remove unneeded defines.
Mostly Q_DISABLE_COPY that were covered by the un-copy-ability of the
respective base classes. Includes a few "stylistic" whitespace changes.

Change-Id: I31ca0e7bada5ed0f34776976efe22ddc444a5bf2
Reviewed-on: http://codereview.qt.nokia.com/1609
Reviewed-by: hjk <qthjk@ovi.com>
2011-07-14 12:15:38 +02:00
Christian Kamm
1dfd78a9c8 Indenters: Fix dangling pointer when project settings are deleted.
Task-number: QTCREATORBUG-5390
Change-Id: I68517955a86fbb2ded53f6235a7fe27793e2b2c8
Reviewed-on: http://codereview.qt.nokia.com/1481
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2011-07-12 11:50:53 +02:00
Leandro Melo
23decd9d34 C++ editor: Improve type hierarchy widget
Now the type hierarchy widget will also show the classes
derived from the selected one. For consistency the way
the base classes are shown was changed too. The diagram
below is an example from Creator's code when openining
the type hierarchy for BaseTextEditorWidget:

Bases
 +QObject
  +QWidget
   +...
     BaseTextEditorWidget
 +QPaintDevice
  +...
    BaseTextEditorWidget
Derived
 +BaseTextEditorWidget
  +VCSBaseEditorWidget
    GitEditor
    MercurialEditor
    ...
   GLSLEditorWidget
   CppEditorWidget
   QmlJSTextEditorWidget
   ...

Depending on the project and on the selected class the
hierarchy widget might take a bit to be constructed.
This should be improved later.

Change-Id: Ifbdd1cbbba955a0bdf03297ff0e7620351b12dc5
Reviewed-on: http://codereview.qt.nokia.com/883
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-07-08 14:50:26 +02:00
hjk
b4b9ba7e2a cpptools: use static CppToolsPlugin functions instead of indirect access
Saves a symbol.

Change-Id: Id949799852560a3e22da9c0a858b399c6ab3d6e1
Reviewed-on: http://codereview.qt.nokia.com/1295
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-07-08 12:39:01 +02:00
Oswald Buddenhagen
1f3896e8af Merge remote-tracking branch 'origin/2.3'
Conflicts:
	share/qtcreator/dumper/bridge.py
	src/plugins/debugger/gdb/gdbengine.cpp
	src/plugins/remotelinux/remotelinuxapplicationrunner.cpp

Change-Id: I444f797723d5879ea08c5c0e1f31158d271d4f41
2011-07-07 12:26:59 +02:00
Christian Kamm
1f9be179f0 C++ indenter: Make continuations after ( consistent.
Change-Id: Iae780127065e3fce274db10e173f5c0bde15bd92
Reviewed-on: http://codereview.qt.nokia.com/1229
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-07-06 13:06:42 +02:00
Christian Kamm
7ffd2e8b9f Add missing license headers.
Change-Id: I2dc5d18bfffc8389ad0b162b7dc3b5cc2406027f
Reviewed-on: http://codereview.qt.nokia.com/1222
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
2011-07-06 11:17:05 +02:00
hjk
a322bd606f Replace qt-info@nokia.com with info@qt.nokia.com
Change-Id: I61e7cf189a1c4ea04e2a88a80a4f15e43cd3c018
Reviewed-on: http://codereview.qt.nokia.com/1187
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-07-06 11:14:01 +02:00
Christian Kamm
e2cdaf7888 C++ indenter: Fix function declaration continuation indent.
Change-Id: I0ebe1f0f531cb4830f80b80c6bb52caeaee01353
Reviewed-on: http://codereview.qt.nokia.com/1167
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-07-06 10:00:05 +02:00
Erik Verbruggen
7e43490f99 Emit a signal when parsing is finished after updating source files.
Change-Id: I8a8878c420c0f8d24db16d606aace42519ac3047
Reviewed-on: http://codereview.qt.nokia.com/1151
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bill King <bill.king@nokia.com>
2011-07-05 16:10:06 +02:00
Jarek Kobus
c98e7c2b83 Small refactor, preparation for built-in settings
Change-Id: I91de7a01aba37f41398df7b06dbe5af868094379
Reviewed-on: http://codereview.qt.nokia.com/615
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
2011-06-22 15:12:10 +02:00
con
c44ca6df6f Avoid a lot of updates when CppCodeStyleSettingsPage is created
This helps to reduce the lag when typing in the preference's filter
edit.

Task-number: QTCREATORBUG-5065
Change-Id: I26634a47b21df1402a53037864bb0c334eba8078
Reviewed-on: http://codereview.qt.nokia.com/572
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
2011-06-22 10:08:39 +02:00
Leena Miettinen
f1889864db UI text: check capitalization and tooltips
Change-Id: I3686ac83e5fdc009b03e84ab3c7b24a052d119c4
Reviewed-on: http://codereview.qt.nokia.com/569
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-06-22 10:05:33 +02:00
Friedemann Kleint
0ef59d9970 tr()-Fixes for 2.3: Small spelling/notr-fixes.
Change-Id: I66b8b0e20b225429b4399dfca154a2806260ac61
Reviewed-on: http://codereview.qt.nokia.com/483
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-06-15 17:25:36 +02:00
Jarek Kobus
2fad22c030 Add restore fallback functionality, make better tr()
Task-number: QTCREATORBUG-5025
Change-Id: Ia3f6fa2380dd1a93f120873f584662a267ca4d50
Reviewed-on: http://codereview.qt.nokia.com/360
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Christian Kamm <christian.d.kamm@nokia.com>
2011-06-08 13:27:52 +02:00
Leandro Melo
61325aae0d Editors: Make snippets and code style honor font settings
Task-number: QTCREATORBUG-5007

Change-Id: Ied78ef17ea7a25d22c37d36fd4eb7257c6c9f4c0
Reviewed-on: http://codereview.qt.nokia.com/293
Reviewed-by: Thorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>
2011-06-01 11:21:13 +02:00
Christian Kamm
794f296701 C++ indenter: Fix multiple initializers.
Task-number: QTCREATORBUG-4993
Change-Id: I0f7d541eb7b26c37b8167e30e2949b6b939fe4b8
Reviewed-on: http://codereview.qt.nokia.com/297
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-06-01 11:14:50 +02:00
Leandro Melo
743b5b7431 C++ editor: Normalize line endings for find usages
Find usages and related rely on functions that assume \n as line
ending. This is true for the preprocessed files, but not for the
original sources.

Change-Id: I61b7e05c0116504d11c7df4b1aa10d519b705336
Reviewed-on: http://codereview.qt.nokia.com/260
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
2011-05-31 12:06:27 +02:00
Christian Kamm
f762d93702 C++ indenter: Fix indent in body of function with default argument.
Change-Id: I9d4f5b3ae7b8a59f8350cf756979a3a430398112
Reviewed-on: http://codereview.qt.nokia.com/206
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-05-30 12:02:04 +02:00
Thorbjørn Lindeijer
61fc11b9c0 Fixed missing border for tab widget in Projects mode
Usually for tab widgets we disabled the border of the first tab, since
the tabs are generally aligned to the single pixel black splitters that
we used in Creator (like in the case of dock widgets or application
output).

Since this particular tab widget is not aligned to such a splitter, it
should have its own border which can be achieved by disabling the
custom style on it.

Change-Id: I8c7af60847afb5cd73ecd8c39a834ed63298ec76
Reviewed-on: http://codereview.qt.nokia.com/122
Reviewed-by: Jens Bache-Wiig
2011-05-30 11:59:12 +02:00
Christian Kamm
cf7663b2de QmlJS: Read the 'revision' property generated by qmldump.
Change-Id: Ia31b1845b1e1e5aabc347dc115e580c72e36f4e3
Reviewed-on: http://codereview.qt.nokia.com/200
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-05-30 09:31:37 +02:00
Christian Kamm
30fd098d9f C++ indenter: Make CppCodeStyleSettings a class.
Also register it with the meta type system.

Change-Id: Id720e43d19765283765e7dbbd46820ba9cfb1be7
Reviewed-on: http://codereview.qt.nokia.com/172
Reviewed-by: Bill King <bill.king@nokia.com>
2011-05-27 10:56:07 +02:00
Leandro Melo
890254b0f1 C++ editor: Share the model data acrross completion items
More than one proposal item could be accessed during an iteration.
So they should not take ownershipt of the data, but simply share it.

Change-Id: I7b81b8772cd8ad4d6c2332ba6b5bc320055cd5a2
Reviewed-on: http://codereview.qt.nokia.com/136
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-05-26 12:25:58 +02:00
Leandro Melo
be48bfb2fe C++ editor: Check _ to accept idle editor completion
In addition to letters and numbers.

Change-Id: I89ec68c50a62516cc0b91d267fd96bb908cbf8bc
Reviewed-on: http://codereview.qt.nokia.com/131
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-05-26 12:14:34 +02:00
Christian Kamm
2569473535 C++ indenter: Fix reindenting 'Q_SIGNALS:'.
Change-Id: Ieb2a7673e99dec06d925263f48b39c0c3a4d2fa1
Reviewed-on: http://codereview.qt.nokia.com/108
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-05-25 12:07:29 +02:00
Christian Kamm
312f6d0ff1 C++ style settings: Compile fix for namespaced Qt.
Change-Id: I89db5239576385823315443474669f5fd9ef69b4
Reviewed-on: http://codereview.qt.nokia.com/87
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: hjk
2011-05-24 16:00:06 +02:00
Christian Kamm
779fafcbfe Make C++ code style configurable.
Change-Id: Iaf08edb2361146e6b5e1cbafdb716a23c938875b
Done-with: Jarek Kobus
Task-number: QTCREATORBUG-2670
Task-number: QTCREATORBUG-4310
Task-number: QTCREATORBUG-2763
Task-number: QTCREATORBUG-3623
Task-number: QTCREATORBUG-567
Reviewed-on: http://codereview.qt.nokia.com/74
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-05-24 12:45:07 +02:00
Leandro Melo
0350314b22 Completion: Don't propose when there's a "good" candidate
This also generalizes some code previously specific to C++.

Change-Id: I5774d04a45f28a4e276a0ef282ce0aa5a2f2e552
Reviewed-on: http://codereview.qt.nokia.com/48
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-05-20 17:11:49 +02:00
Leandro Melo
956bac297b C++ editor: Fix potential crash in completion
There was still a problem in the previous change (that's
why it was reverted) which should be fixed now.

Task-number: QTCREATORBUG-4940
Change-Id: I8a0d993b9f313fc98494cf93fed1f87939a358b1
Reviewed-on: http://codereview.qt.nokia.com/27
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-05-19 18:37:22 +02:00
Leandro Melo
d4e5b81e43 Revert "C++ editor: Fix potential crash in completion"
This reverts commit a395022a84.

There are some undesired side effects...

Change-Id: I001ed375911a4ffda5bd25c804ce06f99be40e3c
Reviewed-on: http://codereview.qt.nokia.com/25
Reviewed-by: Leandro T. C. Melo <leandro.melo@nokia.com>
2011-05-19 16:54:23 +02:00
Leandro Melo
a395022a84 C++ editor: Fix potential crash in completion
Task-number: QTCREATORBUG-4940
Change-Id: If55c2ddc7949cbd31029eef8317b4d0a015f272e
Reviewed-on: http://codereview.qt.nokia.com/17
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2011-05-19 16:22:41 +02:00
Christian Kamm
c5ce20c5f7 C++ indenter: Treat extern "C" like namespace.
Change-Id: Ib0553d35fbd83aada2b8809aa008b1f75ca77c32
Done-with: Erik Verbruggen
Reviewed-on: http://codereview.qt.nokia.com/14
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
2011-05-19 13:23:50 +02:00
Christian Kamm
86d5df063c C++ indenter: Fix extra specifier in return type of func decl.
Like
struct Foo bar() { }

Change-Id: I946937c23d1660909757952a5a3bd400c4781826
Reviewed-on: http://codereview.qt.nokia.com/13
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
2011-05-19 13:14:07 +02:00
Leandro Melo
0dc449944d c++ editor: Fix automatic completion for includes
Reviewed-by: Roberto Raggi
2011-05-18 16:33:39 +02:00
Leandro Melo
ab40e9c78e C++ editor: Remove scanning/caching of includes
With the completion now in a separate thread this should
no longer be necessary.

Reviewed-by: Roberto Raggi
2011-05-18 12:35:53 +02:00
Leandro Melo
bec4f02495 New code assist API
This is a re-work of our completion engine. Primary goals are:

- Allow the computation to run in a separate thread so the GUI is not locked.
- Support a model-based approach. QStrings are still needed (filtering, etc), but
internal structures are free to use more efficient representations.
- Unifiy all kinds of *assist* into a more reusable and extensible framework.
- Remove unnecessary dependencies on the text editor so we have more generic
and easily "plugable" components (still things to be resolved).
2011-05-18 10:46:20 +02:00
Oswald Buddenhagen
a14955d0fb move the "cannot undo" warning to the search result pane
this is where it belongs, rather than into some arbitrary editor.
as a nice side effect, now not only the "rename symbol", but also the
global search&replace has such a warning.
2011-05-12 20:10:03 +02:00
Oswald Buddenhagen
882e34ee28 rewrite editor info bar handling
the info about the bars is now stored in the IFile, not in the
EditorView. this is somewhat more expensive for the bars which
identically apply to all editors of one type, but fixes consistency
issues between views.

additionally, it is now possible to set several simultaneous
info bars per file, which ensures that no information is lost.

Co-authored-by: mae
2011-05-12 20:10:02 +02:00
Friedemann Kleint
ddf4b613f3 Krazy fixes (spelling, single char strings, char constants). 2011-05-10 15:21:41 +02:00