Ran script to remove inludes on a trial-and-error basis and
manually corrected it.
Change-Id: I61a5c2fff02616f6883ddf3923e4361fca6bf92b
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Ran script to remove inludes on a trial-and-error basis and
manually corrected it.
Change-Id: Ic8464ea084ca1ab401e9f4a7d0183b92b4038902
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
There were quite a few classes using CPlusPlus namespace in the
CppTools plugin. Rename them and do some other small namespace
related coding style fixups.
Change-Id: I093fc1f3fc394fd9923e3f18d5f66522e288f21d
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
... and adjust INCLUDEPATH accordingly.
while i'm at messing with include statements, also re-order the include
blocks according to policy and sort them within bigger blocks.
Change-Id: I7762abfd7c4ecf59432b99db2f424e4fa25733a5
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Currently, pressing Ctrl + Shift + Up/Down with a commented block of
text selected will indent that block if the line two lines above the
block is indented. This is undesirable, because the indenting for that
block is incorrect when it is uncommented. See the following example:
Step 1:
void f()
{
int x;
// int y;
}
Step 2 - After Ctrl + Shift + Up:
void f()
{
int x;
// int y;
}
Step 3 - After uncommenting the block:
void f()
{
int x;
int y;
}
This patch tells the CPP and QmlJs editors not to indent commented
blocks when moving them. Blocks that are not entirely within comments
(excluding whitespace) are not affected.
Tested with (C++ and JavaScript, respectively):
http://paste.kde.org/688778/http://paste.kde.org/688784/
Change-Id: I35414e6dfd5a1084fd997594e711ea9932231981
Reviewed-by: David Schulz <david.schulz@digia.com>
Done by reserving enough space in for the various QLists when created,
and by preventing unnecessary copying of lists.
Change-Id: I5a9f0f7042bbaa1cf5eb076b956c35f2191468c6
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
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>
...in CppEditor, QmlJSEditor and BinEditor.
Addresses second crash reported at QTCREATORBUG-8775. The first one is
already fixed.
Task-number: QTCREATORBUG-8775
Change-Id: I11c1f030ebeb2b2cbec02503e8e225fc5600a101
Reviewed-by: David Schulz <david.schulz@digia.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
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>
Invalid Uses (line == 0) are generated by e.g. a Q_D statement.
This kills
1. the selection artifact in line 0, column 0 and
2. the warning "QTextCursor::setPosition: Position '-1' out of range"
for the following example code and cursor position:
void f()
{
Q_D(x)
d->hello(); // put the cursor on the 'd'!
}
Change-Id: I6968cbc261f05e08f71ff125437c8c9e863b475b
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
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>
Update an editor when it is visible, not only when it is the active
editor.
Change-Id: I972d7185e466355dba62f2f59144cfaad5f37778
Reviewed-by: David Schulz <david.schulz@digia.com>
Uses to be done only for symbols, implement for macros as well.
Change-Id: I5403527cc8b423e7051c3ce470e2f40ad65e65d5
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
This changes current behavior while opening links. Link is now opened in
next split by default. If you use CTRL+Click to open links, it will also
open in next split. However, by using CTRL+ALT+click it will open in
current split.
There are two new checkboxes in Tools/Options/Text Editor/Display:
- "Open Links in New Split" - if it is checked, links will not be opened
in current split. However, if document with link is already opened, it
will be used to open the split
- "Force open links in next split" - Links will always open in next
split, even if their document is already opened somewhere else.
Task-number: QTCREATORBUG-8117
Change-Id: Ib99075b55d9e9683ed2c2386767227457de0a3fc
Reviewed-by: David Schulz <david.schulz@digia.com>
#!/usr/bin/env ruby
Dir.glob('**/*.cpp') { |file|
# skip ast (excluding paste, astpath, and canv'ast'imer)
next if file =~ /ast[^eip]|keywords\.|qualifiers|preprocessor|names.cpp/i
s = File.read(file)
next if s.include?('qlalr')
orig = s.dup
s.gsub!(/\n *if [^\n]*{\n[^\n]*\n\s+}(\s+else if [^\n]* {\n[^\n]*\n\s+})*(\s+else {\n[^\n]*\n\s+})?\n/m) { |m|
res = $&
if res =~ /^\s*(\/\/|[A-Z_]{3,})/ # C++ comment or macro (Q_UNUSED, SDEBUG), do not touch braces
res
else
res.gsub!('} else', 'else')
res.gsub!(/\n +} *\n/m, "\n")
res.gsub(/ *{$/, '')
end
}
s.gsub!(/ *$/, '')
File.open(file, 'wb').write(s) if s != orig
}
Change-Id: I3b30ee60df0986f66c02132c65fc38a3fbb6bbdc
Reviewed-by: hjk <qthjk@ovi.com>
Now the (new or changed) return type is also tracked if the user starts
to type it as a prefix of the function name (followed by some white
space).
Done-by: Erik Verbruggen <erik.verbruggen@digia.com>
Change-Id: I902132d5dd8fedcf430c43e9780428825f8ccada
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Distinguish from const char * one.
QString ctor is yet to be removed
Change-Id: I2da231036c6417353b0566d39666d918ad141c6d
Reviewed-by: hjk <qthjk@ovi.com>
Record revisions of documents in macro definitions and usages. Then,
when searching for usages, check the revision of the documents against
the revision of the macros. If they are out-of-sync, repreprocess the
documents to get up-to-date info.
Task-number: QTCREATORBUG-7872
Change-Id: I846bb52ec660024728ab117a9fb7e43382a50e63
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Mind that the mouse wheel doesn't really work on the combo box as
expected, because it only cycles through toplevel items.
Task-number: QTCREATORBUG-7894
Change-Id: I6e22b6c7d7256c16c81280e80652cf1350166f83
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Also removed all <QMainWindow> includes which are not needed
anymore.
Change-Id: I393c9a62a5c6df95d9f35d872e1473a4f13bcdc4
Reviewed-by: hjk <qthjk@ovi.com>
This makes navigation through large files much easier.
Change-Id: Ie55f75078a1727949db6e8824af4795deb96292e
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
Works the same way as Rename Usages for C++ Symbols.
For now, no Search Again as this requieres further work.
Task-number: QTCREATORBUG-413
Change-Id: I09e85ea1e8c247f5ce0b6bc566aba8018c1569e4
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
- Highlight all function/methods (not just virtual methods).
- Highlight as a function even if number of arguments does not match. In
that case, add a diagnostic message to indicate there are too many/too
few arguments.
- Fix highlighting of parameters in function declarations.
These used to be handled indiferently, and they could be mistaken for
type or field references.
- Properly highlight template method calls.
Change-Id: I6e61c9ee47763db95c62314f9cc1c4d398df38b3
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
This reverts commit e3e67467cfea5934f16a95385761455b0c495a0d
Reason is that it shows errors for calls to function-like macros. For example, any use of Q_DISABLE_COPY results in invalid errors.
Change-Id: I1fd1473ac5a30da5b9aebf6a3f0f11055bdbe8ad
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
- Highlight all function/methods (not just virtual methods).
- Highlight as a function even if number of arguments does not match. In
that case, add a diagnostic message to indicate there are too many/too
few arguments.
- Fix highlighting of parameters in function declarations.
These used to be handled indiferently, and they could be mistaken for
type or field references.
- Properly highlight template method calls.
Change-Id: I6ab463996dda47554839f482da47f561f76663a7
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
Most of editors have "jump to file" or "follow symbol" actions. This
patch reduces amount of related boilerplate code.
New actions are made optional to prevent shortcut clash (both use F2).
Change-Id: I2af580ed9d6789df25f4487ba001f3b83887c504
Reviewed-by: hjk <qthjk@ovi.com>
Fix indentation of auto-completed Doxygen comments, as well as auto-
leading characters from the block, to make it work with both spaces and
tabs.
Change-Id: I6c1c1665675cc25e01983e6d39b472f1b1c9683e
Reviewed-by: Leandro Melo <leandro.melo@nokia.com>