Eike Ziller
c6f965f792
Merge remote-tracking branch 'origin/3.0'
...
Conflicts:
src/plugins/cpptools/cppcompletion_test.cpp
src/plugins/cpptools/cpptoolsplugin.h
Change-Id: I4e786745e8abab8d15b75fd962c21b4b28620d47
2014-01-21 14:18:22 +01:00
Orgad Shaneh
80a3caa396
CppTools: Fix completion for nested enums
...
Task-number: QTCREATORBUG-5456
Change-Id: I0bb4756e3cdf3c87a4c2b0fbfe6953faaa5e1c52
Reviewed-by: André Hartmann <aha_1980@gmx.de >
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-21 14:06:16 +01:00
Orgad Shaneh
1fd576c1f6
C++: Add support for prefixes in switch header/source
...
Task-number: QTCREATORBUG-11031
Change-Id: I93cce0ebf46984eb06094e1f1519717be2bbaa79
Reviewed-by: Orgad Shaneh <orgads@gmail.com >
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-21 12:20:15 +01:00
Eike Ziller
4eff289e03
TextEditors: Remove widget's setTabSettings method
...
Change-Id: If212b45e2d526534b7853f3fa23b170f61e1976e
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-21 11:22:16 +01:00
Orgad Shaneh
f506104f29
CppTools: Cleanup header/source test
...
Dynamically create data files in tempPath and clean them up when
finished.
Change-Id: Ie78f557b185b264acc0d0f5814646c203d8a93f4
Reviewed-by: Petar Perisin <petar.perisin@gmail.com >
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-21 11:07:49 +01:00
Eike Ziller
dcba4a2715
Use document instead of widget in TextEditor::RefactoringChangesData
...
Change-Id: I938041c9774fbebd1edc6dc29ccfa569bae94f70
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-21 10:53:25 +01:00
Orgad Shaneh
a309b3cfe6
C++: Store token kind as lexer state
...
... when needed
Change-Id: I32a1649c87e1fa42da80eff5003b2f5714062064
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-20 14:11:18 +01:00
Eike Ziller
3ad3876611
TextEditors: Move indenter to document.
...
Change-Id: I8bdf7134562d007aa16cc63a34f5a15a708577ae
Reviewed-by: Eike Ziller <eike.ziller@digia.com >
2014-01-15 15:02:25 +01:00
Eike Ziller
851f255b9d
Merge remote-tracking branch 'origin/3.0'
...
Conflicts:
src/plugins/qmldesigner/components/formeditor/anchorindicatorgraphicsitem.cpp
src/plugins/qmldesigner/components/propertyeditor/propertyeditorview.cpp
src/plugins/qmlprofiler/qmlprofilertraceview.cpp
Change-Id: I778a0c2d0f1b4f799caaa2c2cc5daf94ec7ca352
2014-01-15 14:04:41 +01:00
Eike Ziller
cec4fac873
CppEditor: Fix semantic highlighting after "Save as"
...
Change-Id: I523735bae9e1a19678d4ab697c1edce2886bedeb
Reviewed-by: Eike Ziller <eike.ziller@digia.com >
2014-01-14 09:04:14 +01:00
Eike Ziller
cfad9bdc3c
TextEditors: Move contentsChanged signal from editor to document
...
Change-Id: Ic935a8971705cb3238deda71aa2b5d19e4f62593
Reviewed-by: Eike Ziller <eike.ziller@digia.com >
2014-01-14 09:03:58 +01:00
hjk
4d96fa7aba
Core: Merge Find and Locator into Core plugin
...
Change-Id: I7053310272235d854c9f409670ff52a10a7add8b
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com >
Reviewed-by: Orgad Shaneh <orgads@gmail.com >
Reviewed-by: Eike Ziller <eike.ziller@digia.com >
2014-01-14 07:43:00 +01:00
Thiago Macieira
58a4e601ff
Fix change-of-sign warning found by ICC
...
-1 is not a valid unsigned value.
registerhandler.cpp(354): warning #68 : integer conversion resulted in a change of sign
return createIndex(row, col, TopLevelId);
^
Change-Id: I41935255704f19724d6cec16ea470e2f8f8a16a1
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com >
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
Reviewed-by: hjk <hjk121@nokiamail.com >
2014-01-10 15:40:22 +01:00
Eike Ziller
a3608f595a
Editors: Remove BaseTextEditorWidget::setBaseTextDocument
...
First step in never changing the text document after construction,
because that is actually not really supported.
Second step will be to fix that for the editor duplicate() methods too.
Change-Id: I3d112ba0895e7ee7ac6dd8ae2318f0de7d2cebc9
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2014-01-10 14:31:11 +01:00
Robert Loehning
5292748bf2
Incremented year in copyright info
...
Change-Id: I6e25ba25aa2898b5382dae7f3751deebb6072efa
Reviewed-by: Eike Ziller <eike.ziller@digia.com >
2014-01-09 09:41:23 +01:00
Eike Ziller
236ea9efb9
Merge remote-tracking branch 'origin/3.0'
...
Conflicts:
share/qtcreator/debugger/dumper.cpp
share/qtcreator/debugger/dumper_p.h
share/qtcreator/debugger/test/main.cpp
src/plugins/debugger/gdb/classicgdbengine.cpp
src/plugins/debugger/gdb/pythongdbengine.cpp
src/plugins/debugger/lldblib/guest/lldbengineguest.cpp
src/plugins/debugger/lldblib/guest/lldbengineguest.h
src/plugins/debugger/lldblib/guest/main.cpp
src/plugins/debugger/lldblib/ipcengineguest.cpp
src/plugins/debugger/lldblib/ipcengineguest.h
src/plugins/debugger/lldblib/ipcenginehost.cpp
src/plugins/debugger/lldblib/ipcenginehost.h
src/plugins/debugger/lldblib/lldbenginehost.cpp
src/plugins/debugger/lldblib/lldboptionspage.cpp
src/plugins/qbsprojectmanager/qbsstep.cpp
src/plugins/qbsprojectmanager/qbsstep.h
src/plugins/qmlprofiler/canvas/qdeclarativecanvas.cpp
src/plugins/qmlprofiler/canvas/qdeclarativecanvas_p.h
src/plugins/qmlprofiler/canvas/qdeclarativecontext2d.cpp
src/plugins/qmlprofiler/canvas/qdeclarativecontext2d_p.h
src/plugins/qmlprofiler/canvas/qmlprofilercanvas.cpp
src/plugins/qnx/blackberrycheckdevmodestep.cpp
src/plugins/qtsupport/debugginghelper.cpp
Change-Id: Ie9fd0a885fb6264a6a8a72daee071b75bcbd2e9d
2014-01-08 11:01:06 +01:00
Robert Loehning
746c5d8863
Incremented year in copyright info
...
Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com >
Reviewed-by: Kai Koehne <kai.koehne@digia.com >
2014-01-08 08:29:47 +01:00
Nikolai Kosjar
1362d9d262
CppTools: Fix test_modelmanager_defines_per_project
...
The example project parts had no project file set and thus the "right"
project part could not be determined in cppeditor.cpp:718.
Change-Id: I088571e9d3c3c8790670bbdd8e68190835a85ad5
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-07 14:25:31 +01:00
Nikolai Kosjar
746da71527
CppEditor/CppTools: Avoid triggering garbage collector on editor close in tests
...
Closing an editor might trigger a timer which leads to the invocation of
the garbage collector. This is unfavourable for the plugin tests since a
test function closing an editor might influence a subsequent test
function (e.g. files get removed from the global snapshot although they
were added shortly before).
Change-Id: Ia80c11f99e2437fe145dc2d983b21962539b5181
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-07 14:19:43 +01:00
Nikolai Kosjar
0bd5917867
CppEditor/CppTools: Don't continue in test function on failure
...
QVERIFY/QCOMPARE are meant to be called in the test function so that on
failure they just can "return" and thus skip subsequent code. Since we
use reusable test code in the test functions (the *TestCase classes), we
need to ensure that on failure no further test code is executed.
This mostly inlines the run function of the test classes into the
constructor.
Change-Id: I320ee032bdde0174ddfe3fdf3f9e18e19abf1d7f
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-07 14:19:33 +01:00
Nikolai Kosjar
c7f3ac4073
CppEditor/CppTools: Clean up *Test* classes
...
* Unify class names
* Fix coding style
Change-Id: I7498192ba9e6b9fc0e97d3d4f0dbb30f1853a0c9
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-07 14:19:21 +01:00
Nikolai Kosjar
5c8df5fa4e
CppEditor/CppTools: Introduce Test{Case,Document}
...
Move common functionality of the 12 test classes into base classes.
Change-Id: If64d3cec876807ac6f991151189860a99b8ff4ca
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2014-01-07 14:19:13 +01:00
Eike Ziller
5aa8a63f90
CppEditor: Fix potential crash
...
The m_snapshotUpdater may never be accessed directly.
Change-Id: Id773a291f66e93a48ae46f2b1c04417af2f26763
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2014-01-07 12:22:30 +01:00
Erik Verbruggen
18ac68adb3
C++: add header chooser to codemodel settings page.
...
Change-Id: I2da9c4b382afcad2faad1817af266381a2f02b2a
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2014-01-07 09:29:20 +01:00
Eike Ziller
5cf0fabb3b
Fix missing completion options page
...
Task-number: QTCREATORBUG-11154
Change-Id: Ib763675e4b00408e2840eb3a672560ffdc8f99d4
Reviewed-by: Eike Ziller <eike.ziller@digia.com >
2014-01-07 08:40:19 +01:00
Orgad Shaneh
0ce3f3e68c
C++: Ignore return type on function overrides comparison
...
Change-Id: I9933e1cc1fb996181e818e2ea0aff76f9255f849
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-28 22:02:01 +01:00
Orgad Shaneh
a625d9656c
CppTools: Add completion tests for enums inside class/namespace
...
Change-Id: If088533d0b51d1750e3273d7ab732dffd110ec85
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-28 20:35:07 +01:00
Orgad Shaneh
f7e6c40094
CppTools: Uncomment a test and fix it
...
The bug was fixed long time ago, the test is missing a semicolon
Change-Id: I0236048d2da059fe208591469fb69541705463cf
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-28 19:17:58 +01:00
Orgad Shaneh
ed13ba2d0c
CppTools: Replace comma with dot for test names
...
Comma is used to separate tests on command-line
Change-Id: I785d2137d54b0e1e4edbbd940042dc926719dcfc
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-28 19:17:52 +01:00
Orgad Shaneh
90265b7696
CppTools: Fix indentation for some completion tests
...
Change-Id: I9a5bf4705da5ca88776dec70057da2c64e4c1494
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 13:46:59 +01:00
Orgad Shaneh
0909c0295f
CppTools: Make completion tests data-driven
...
Mostly done using the following Ruby script:
Fname = 'src/plugins/cpptools/cppcompletion_test.cpp'
s = File.read(Fname)
mod = s.gsub(/(?<declaration>void CppToolsPlugin::test_(?<test_name>[^(]+)\(\)\n\{)(?<body>.*?\n)\}/m) { |func|
match = $~
declaration = match['declaration']
body = match['body']
test_name = match['test_name'].sub('_data', '')
final = body.gsub(/(?:completions.clear\(\);\s+)?(?: +)[^\n]* =\n(?<code>.*?);\s*(?<completions>(?:completions.append\(QLatin1String\("[^"]*"\)\);\s*)*)QTest::newRow\("case: (?<name>.+?)"\)\s*<< code << _\("(?<prefix>[^"]+)"\) << completions;/m) {
m = $~
res = " QTest::newRow(\"#{test_name}: #{m['name']}\") << _(\n#{m['code'].rstrip}\n ) << _(\"#{m['prefix']}\") << (QStringList()"
m['completions'].scan(/completions.append\((.+)\);/) { |comp|
res << "\n << #{comp[0]}"
}
res + ');'
}.gsub(/(?: +)[^\n]* =\n(?<code>.*?);\n\s*CompletionTestCase test\(.+?, "(?<prefix>.+?)"\);\s*QStringList expected;\s*(?<completions>(?:expected.append\(QLatin1String\("[^"]*"\)\);\s*)*)const QStringList completions = test.getCompletions\(\);\s*QCOMPARE\(completions, expected\);/m) {
m = $~
res = " QTest::newRow(\"#{test_name}\") << _(\n#{m['code'].rstrip}\n ) << _(\"#{m['prefix']}\") << (QStringList()"
m['completions'].scan(/expected.append\((.+)\);/) { |comp|
res << "\n << #{comp[0]}"
}
res + ');'
}.gsub(/(?: +)[^\n]* =\n(?<code>.*?);\n\s*CompletionTestCase test\(.+?(?:, (?<prefix>".+?"))?\);\s*(?:const )?QStringList completions = test.getCompletions\(\);\s*QCOMPARE\(completions.size\(\), \d+\);(?<completions>(?:\s*QVERIFY\(completions.contains\([^\n]+\);)*)\n/m) { |mm|
m = $~
res = " QTest::newRow(\"#{test_name}\") << _(\n#{m['code'].rstrip}\n ) << _(#{m['prefix']}) << (QStringList()"
m['completions'].scan(/QVERIFY\(completions.contains\((.+?)\)\);/) { |comp|
res << "\n << #{comp[0]}"
}
res + ");\n"
}.gsub(/(?: +)[^\n]* =\n(?<code>.*?);\n\s*CompletionTestCase test\(.+?(?:, (?<prefix>".+?"))?\);\s*bool replaceAccessOperator = false;\s*const QStringList completions = test.getCompletions\(\&replaceAccessOperator\);\s*QCOMPARE\(completions.size\(\), \d+\);(?<completions>(?:\s*QVERIFY\(completions.contains\([^\n]+\);)*)\s*QVERIFY\((?<replace>!?)[^)]*\);\n/m) { |mm|
m = $~
res = " QTest::newRow(\"#{test_name}\") << _(\n#{m['code'].rstrip}\n ) << _(#{m['prefix']}) << (QStringList()"
m['completions'].scan(/QVERIFY\(completions.contains\((.+?)\)\);/) { |comp|
res << "\n << #{comp[0]}"
}
res + ")\n << #{m['replace'].empty?};\n"
}
if final == body or final['QTest::addColumn']
declaration + final + "}"
else
final
end
}.gsub(/QTest::newRow\("([^"]+)"/) { |m|
name = $1
if name.size > 73
space = name[0..73].rindex(/[ _]/)
"QTest::newRow(\"#{name[0..space]}\"\n \"#{name[space+1..-1]}\""
else
m
end
}.gsub(/\s+QTest::newRow/, "\n\n QTest::newRow")
if mod != s
File.open(Fname, 'wt').write(mod)
end
Change-Id: Id6bfb03cdf31ac27b36028fcdc861c340a5398f4
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 13:46:49 +01:00
Orgad Shaneh
ed2d98577a
CppTools: Reorder completion tests
...
For reasonable diff on following commit
Change-Id: I97e121355279f9166cea2f500cf2d4df5fafaa32
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 13:41:52 +01:00
Orgad Shaneh
f53598a1ae
CppTools: Braces cleanup in CppCompletionAssistant
...
Change-Id: I3dea8a8bdd4ae71b48926ec3332ef00cf5ad4303
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 13:41:35 +01:00
Orgad Shaneh
be31d8d08f
CppTools: Minor optimization in CppCompletionAssistant
...
Change-Id: Ieb452713e9e09fce107520c4fd2a401007802e89
Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com >
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 13:41:26 +01:00
Orgad Shaneh
b0c3a6bad8
CppTools: Generalize data-driven test_completion
...
Change-Id: I409a00b869a95dff2d69c9744da75c324c82776a
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 13:25:51 +01:00
Orgad Shaneh
0204f56628
CppTools: Cleanup completion tests #2
...
Change-Id: I3c5f42de464a5607f1caa6a48d881c5a4a113ec3
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 13:20:27 +01:00
Orgad Shaneh
7356987c41
CppTools: Remove superfluous comments from completion tests
...
Change-Id: I2526daeaf54f7f8d4b808cf556cff9242adaa391
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 12:51:38 +01:00
Orgad Shaneh
5713b85cb0
CppTools: Refix MSVC compilation
...
SemanticInfo has moved from CppEditor to CppTools and is now exported,
so this workaround is no longer needed (and it breaks linkage)
Change-Id: Ic9ba017bcb06be85fdccef27e63091415494bb21
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 12:00:34 +01:00
Orgad Shaneh
d3c606c001
CppTools: Fix MSVC compilation
...
Change-Id: I7b3c52a6eb70a0e2d7f2785fac71cb3ac68769d8
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-23 09:25:02 +01:00
Erik Verbruggen
5beb74fd9d
Add experimental clang code-model plug-in.
...
Previously known as the wip/clang branch.
Contributors (in alphabetical order):
- Christian Kamm <christian.d.kamm@nokia.com >
- Erik Verbruggen <erik.verbruggen@digia.com >
- Leandro Melo <leandro.melo@nokia.com >
- Peter Kuemmel <syntheticpp@gmx.net >
- Sergey Shambir <sergey.shambir.auto@gmail.com >
Change-Id: I4c3ff600a19b6732641c1d5ef28236bf2cc17737
Reviewed-by: hjk <hjk121@nokiamail.com >
2013-12-20 17:05:09 +01:00
Eike Ziller
1adab4c4cc
Merge BaseTextEditorWidget::editorDocument() and ::baseTextDocument()
...
Doesn't really make sense to have the additional IDocument *editorDocument()
method.
Change-Id: I0a7420eb1afaa76f63c3f7e9c4b373acf624ffb9
Reviewed-by: Eike Ziller <eike.ziller@digia.com >
2013-12-18 11:34:34 +01:00
Eike Ziller
e035ae6df1
Merge remote-tracking branch 'origin/3.0'
...
Conflicts:
share/qtcreator/debugger/stdtypes.py
src/plugins/qmlprofiler/qmlprofilereventsmodelproxy.cpp
Change-Id: I5d86746d58960e41e01e725ccb2a6c00890f0dfd
2013-12-18 11:02:16 +01:00
Friedemann Kleint
dc6b28366c
Avoid value-list creation when iterating over maps.
...
Change-Id: I704ba93d01ffababb405bc801f07a845631930cc
Reviewed-by: Daniel Teske <daniel.teske@digia.com >
2013-12-16 16:03:16 +01:00
Nikolai Kosjar
a8e7b6bd38
CppEditor: Use the project part chosen with CppPreProcessorDialog
...
...otherwise the CppPreProcessorDialog is only semi-useful.
Change-Id: I6b80967b05e7c9a51cd78ae064a3d78170948e32
Reviewed-by: David Schulz <david.schulz@digia.com >
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
Reviewed-by: Eike Ziller <eike.ziller@digia.com >
2013-12-16 10:32:26 +01:00
Thiago Macieira
a60b89bff4
Remove trailing comma in an enum
...
qmljsconstants.h(53): warning #271 : trailing comma is nonstandard
[and many more]
Change-Id: I2224b7fe6ae1954b27d2b2bfebd469e1ca472f7b
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com >
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2013-12-12 10:17:22 +01:00
Nikolai Kosjar
9b41023b68
CppEditor/CppTools: Tests: Fix potential race condition
...
...when updating the code model.
Change-Id: Ifc55b7d0bb795b9cfd72465990991bc2cc907846
Reviewed-by: Christian Stenger <christian.stenger@digia.com >
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2013-12-12 10:14:50 +01:00
Nikolai Kosjar
7f829b26e5
Clean up {classview,cppeditor,cpptools}.{pro,qbs}
...
Mostly reordering files alphabetically.
Change-Id: Ibad1fa75559218fe488d1b31c7200ba4ff6131fe
Reviewed-by: Orgad Shaneh <orgads@gmail.com >
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2013-12-11 11:46:42 +01:00
Nikolai Kosjar
273192759b
CppEditor/CppTools: Move FunctionHelper to CppTools
...
...and rename it to FunctionUtils.
Change-Id: If076ec01fd82e8ba728764bdeab7e87e8bc1ff3b
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2013-12-11 11:46:33 +01:00
Erik Verbruggen
d20dd06abb
C++: remove superfluous forward defines.
...
Change-Id: I962e0fbafdb2281645b98779a421d1084d223570
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com >
2013-12-10 16:03:54 +01:00
Nikolai Kosjar
e6b41d7e2f
CppEditor: Use TypeHierarchyBuilder in FunctionHelper::overrides
...
...instead going the way over CppClass. This makes
FunctionHelper::overrides independent of the cppeditor plugin.
Change-Id: Ifaedb94da1f67b3876e06cce9e745aaf3c1050a7
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com >
2013-12-10 15:07:34 +01:00