Commit Graph

3767 Commits

Author SHA1 Message Date
Eike Ziller
f4e87a7e0c Merge remote-tracking branch 'origin/3.6' into 4.0
Conflicts:
	src/plugins/projectexplorer/applicationlauncher.cpp
	src/plugins/projectexplorer/applicationlauncher.h
	src/plugins/qmlprofiler/qmlprofilerclientmanager.cpp
	src/plugins/qmlprofiler/qmlprofilertool.cpp
	src/plugins/qtsupport/uicodemodelsupport.cpp
	src/plugins/qtsupport/uicodemodelsupport.h

Change-Id: I6f6ae77422d99f4f422b108ade6b64273df9dd57
2016-03-03 16:10:04 +01:00
Robert Loehning
02de3071ee Squish: Update tst_git_first_commit
Change-Id: Ib5122595a3036345f441238de20878885f860aa4
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-03-02 13:56:10 +00:00
Eike Ziller
8da98c44f1 Merge remote-tracking branch 'origin/master' into 4.0
Change-Id: Iab01658c329f3bf57077595d54be6ed73f11f715
2016-03-02 09:18:06 +01:00
Orgad Shaneh
d9a57623af Clang: Add some tests for lambda highlighting
Test that local, argument and member variables are highlighted
correctly when referenced inside a lambda

struct LambdaTester
{
    int member = 0;
    void func() {
        const int var = 42, var2 = 84;
        auto lambda = [var, this](int input) {
            return var + input + member; // All variables here
        };
        lambda(var2);
    }
};

Change-Id: I3b7b86c57a91f0f254715770dd870033be928b28
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
2016-03-01 13:20:49 +00:00
Christian Kandeler
f900b4e1ba Selection changer autotest: Fix build with namespaced Qt.
Change-Id: Ic9709ac4e76a199bb9fdd7ed231d48d498201de6
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-02-29 15:14:37 +00:00
Eike Ziller
4b30b30d6d Merge remote-tracking branch 'origin/master' into 4.0
Change-Id: Iad8f5ab4bc44e890cd0c72d5bcbceb6f18f6e995
2016-02-29 10:38:16 +01:00
Alexandru Croitor
bed88818ce C++: Implement context-aware expand / shrink selection actions.
Implement selection expanding / shrinking, that is aware of C++
semantics, thus giving smart selection changing.

Change-Id: I1386a20597fa6bb85c3aa0d8ddfb87cdb3fd7c38
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-02-29 08:15:03 +00:00
Eike Ziller
6d4abdc801 runAsync/mapReduce tests: Do not run moc on files from utils lib
Change-Id: I96cccbe9a2f617e0255bbedfae021d08c546fc8c
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-02-26 13:43:32 +00:00
Robert Loehning
8e6765df23 Squish: Update tests using clang code model
Code models can't be swapped at runtime anymore.

Change-Id: I76a9894d0413d7d5a368ec6d506180a3837a6e2c
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-26 13:06:24 +00:00
Eike Ziller
34fd32565a Merge remote-tracking branch 'origin/master' into 4.0
Change-Id: I07981129945f5a78f3ec4a4740a983c613b41e48
2016-02-26 10:58:01 +01:00
Eike Ziller
47c3755600 mapReduce: Support progress information and add (unordered) map
If a container is given to mapReduce, it takes the responsibility to
report progress information for the whole operation. If the map function
reports its own progress, that is taken into account for the overall
progress.

The (so far only unordered) Utils::map operation can be used to replace
MultiTask, by passing a member function of the items in the container as
a map function.

Change-Id: I18ca38a6ad2899d73f590bfe59bf2e6eb2f1a57a
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-26 08:36:08 +00:00
Eike Ziller
dcf09b0008 runAsync: Support functions wrapped in reference_wrapper
Change-Id: I2dbb793239d432a1316dadb81beee564cc858eaa
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-26 08:35:40 +00:00
Robert Loehning
4ec10b55e8 Squish: Update expected files for tst_openqt_creator
Change-Id: I32deb594e6836ba2dd627cdc1613bfc1fc26cd47
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-25 16:56:53 +00:00
Robert Loehning
4ad4f17811 Squish: Update expected files for tst_opencreator_qbs
Change-Id: Ia840b6fef18bf09bce9938e9b2df5916e454bd7c
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-25 16:56:38 +00:00
Nikolai Kosjar
b2397b6b4f Clang: Ignore certain warnings in header files
We already had this workarounded, but it got lost in the refactorings.

Task-number: QTCREATORBUG-12067
Change-Id: Ie01f9d41f25d17d1b595204748634bc87ef44378
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-02-25 13:31:15 +00:00
Christian Stenger
ed7fee4ccb Tests: Fix compile
Introduced with aaf05f5acd.

Change-Id: I74707cf0af0dd8058536acdee19750583193ed8b
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-02-25 12:42:23 +00:00
hjk
aaf05f5acd Move analyzerbase to debugger
This is the first mechanical step to execute on the 'shared pool of
debugger/analyzer views' idea.

Future steps would be providing infrastructure for the view pool,
making all analyzer/debugger views use the pool and then re-extract
a sensible base for a 'analyzer-and/or-debugger' tool plugin interface.

Change-Id: I1bb392e6dd3084fc56937956bee1d6fd9530335d
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-02-25 12:31:06 +00:00
Eike Ziller
40e7e2cc6e Merge remote-tracking branch 'origin/master' into 4.0
Change-Id: If8d27122d8015700da6684538d01958e9dd2da80
2016-02-25 11:58:44 +01:00
Robert Loehning
edadd6cad5 Squish: Remove unused object
Change-Id: I65021379b27803ea1d38f554348b24e210fb0c8b
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-25 10:31:28 +00:00
Marco Bubke
c3a1355c34 UnitTests: Search for the google test in sibling directories too
Change-Id: I7f9c82e7f4a38a422b1df272f874c3525dfacd32
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-02-25 09:40:30 +00:00
Marco Bubke
e562af2c29 Utils: Rename isReference to isReadOnlyReference
There is implicit knowledge that the reference is read only in the code
so we should honor that and make is explicit.

Change-Id: I0d6eab6595ae1414ad2607760a2e02fd49bafd72
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-25 09:39:51 +00:00
hjk
d9660c8479 Use C++11 unconditionally for qbs build of auto tests
... and valgrind fake tool.

Change-Id: I36d4e696ab0f37067eca639cb79613879d0fc990
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-02-24 16:17:49 +00:00
Robert Loehning
ed1f8b9d1f Squish: Update tst_simple_analyze
Change-Id: Ifba9af5446fec3daa42aa9794a26d02e23b8459d
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-24 14:05:08 +00:00
Robert Loehning
bc921b46a2 QmlDesigner: Explain frequent mistake in test project
Task-number: QTCREATORBUG-15772
Change-Id: I0910d0fce3f93c72febf15b4590c36768146b972
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
2016-02-24 11:25:24 +00:00
Robert Loehning
54e553ac9b Tests: Add test for "using" keyword
Change-Id: I7c1563a69fe6f135a15eb86c1bcfe6b8050de193
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-02-24 10:29:25 +00:00
Eike Ziller
a3c0f0f66a MapReduce refactoring and improvements
- QThread instead of std::thread for better integration with Qt
- Use thread pool for recycling threads
- Map and reduce functions are handled like any function passed
  to runAsync, so they either report results through the
  QFutureInterface, or through the return value.
- Automatically deduce the reduce result type

Change-Id: I7a31370c21f8c27b378cd87c3d5974b162449ce1
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-24 10:17:57 +00:00
Eike Ziller
74cdce071f Merge remote-tracking branch 'origin/3.6'
Conflicts:
	src/shared/qbs
	tests/manual/proparser/main.cpp

Change-Id: I13654bf10c14eb6b1d6805fe86b67ac73b2e4d75
2016-02-24 10:08:37 +01:00
Orgad Shaneh
d7a43eaa18 Tests: Build clang unit tests when clang is enabled
Change-Id: Ia3a07f73bd39304bb4bf1b67cb662499792fa2ca
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
2016-02-22 15:57:41 +00:00
Orgad Shaneh
0c575700cb Clang: Fix highlighting of variables in lambda capture
void func() {
    const int var = 42;
    auto lambda = [var](int input) { // var is not highlighted
        return var + input;
    };
}

Change-Id: I95a5732ab8391e1232894e419b081c729e2d1ba1
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
2016-02-22 15:38:42 +00:00
Marco Bubke
0f61908ab0 Utils: Add sized array
Sometimes you need a very small array which has a size and max size.
QVarLengthArray is simular but has some size and run time overhead and it
has no max size. It will instead malloc. So this array is for very small
collections under 256 values which never allocate and have only a size
overhead of a byte.

Change-Id: Ia392c750d566c4accc6077c3dc4d9d4ae501e599
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-02-22 14:53:12 +00:00
Thomas Hartmann
0642c10512 QmlDesigner: Adding manual test for dummy data
This is a small project that tests the dummydata feature.

Change-Id: I710ec6ac8ebf86c85a155a812e581cca88845666
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
2016-02-22 13:39:03 +00:00
Marco Bubke
7912213894 UnitTests: Use fno-omit-frame-pointer for profiles
Perf is not producing reliable stack traces without.

Change-Id: I5f594d45b06a66d91b0c687937dd948d6c724c62
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-22 13:33:43 +00:00
Thomas Hartmann
8aaf3a0922 QmlDesigner: Adding manual test for dummydata context property
This manual tests shows how to add a simple context
properties for the Qt Quick Designer.

Change-Id: Ied47bc6acbab32d782f6827cf849711aed600821
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-22 10:33:04 +00:00
Robert Loehning
e71cb3ae62 Squish: Update expected sizes of project tree in tst_session_handling
Directories in resource files are now displayed as
separate items, adding two more entries to the tree.

Change-Id: I398469bfe7680c73ab0440fdb9dc6f75e101f2f4
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-22 10:21:11 +00:00
Christian Stenger
bad4cb4896 Tests: Fix wrong license header
Introduced with b278dc87ca.

Change-Id: I595384b35e9e5f2f319ec4e9c1ad92f7fc4bdcd4
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
2016-02-22 07:22:36 +00:00
Marco Bubke
1eb0c94f81 Utils: Add SmallString
SmallString is a very simple utf8 string class. It's purpose is performance.
It uses a short string opimization which provides 31 bytes of heap free
memory to save a 30 bytes long string plus null terminator. If the string
gets larger heap is allocated. The grow strategy is 1.5 to improve reuse
of allocated memory.

It uses optionally constexpr to provide string literals.

Change-Id: I7757fb51abfeca200d074cbfce2f1d99edc0ecb0
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-17 15:07:01 +00:00
Marco Bubke
7984e928d1 UnitTests: Rename CLANGBACKEND_TESTS in UNIT_TESTS
Change-Id: I26635a0c85edcc90cdffb93d3f9ae4ad4c8cb98e
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-17 14:57:53 +00:00
Robert Loehning
122f896548 Squish: Update addHelpDocumentation()
Change-Id: I8b26f1e5efbc51058306ea7183c0b37bcbc49179
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-17 14:52:04 +00:00
Marco Bubke
f8884501c2 Clang: Add Google Benchmark unit tests
Change-Id: I5d137aebd3e94f5d2f867d8ec007973a827491ec
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-17 10:35:34 +00:00
Marco Bubke
b11c14808d Clang: Fix broken windows build
Change-Id: I51b696cbb04e50058ace92a3ead04e3655b0a2f6
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-02-16 18:27:44 +00:00
Robert Loehning
7aa8dc38e9 Squish: override startApplication in startCreatorTryingClang()
Change-Id: I6cb16c2a93ca46503f056c558eb8a6a2b33153d7
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-16 13:16:00 +00:00
Robert Loehning
9d8e4aa922 Squish: Test overwriting of files when adding class
Change-Id: I86ed9a3749f692fe9ead13c31e0ba62c2baa3020
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-16 13:14:35 +00:00
Kevin Funk
0d079062d9 proparser: Make compile
Change-Id: Ifb96fd11f542f9622ea3867c3bf877e722120136
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2016-02-15 17:44:14 +00:00
Robert Loehning
692261564f Squish: Include binary editor in tests
Change-Id: I0b4fc4e0cb18dcbd569ebdba201bfb9e2596ba5b
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-15 10:44:47 +00:00
Robert Loehning
901d74121a Squish: Use existing tools for finding executables
Change-Id: Ic3e7f5db6d12e37f908df3290893768a5be4fa56
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-15 10:43:11 +00:00
Robert Loehning
6f7c4249ad Squish: Stabilize tst_CSUP06
Change-Id: I52f4c858f178cb3018e57461e2350564fbf78024
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-15 10:40:54 +00:00
Nikolai Kosjar
b064b06759 Clang: Display also child diagnostics in tooltips
...by introducing a custom tooltip widget for diagnostics.

Locations and fixits of child diagnostics are presented as clickable
links, leading to that position in the editor or to the execution of
that fix it.

Change-Id: I83e801e22d0421dd29275e333e5dd91587885cf1
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2016-02-12 11:54:09 +00:00
Nikolai Kosjar
9a4284d666 Clang: Use CppHoverHandler for diagnostic tooltips
We used to call QTextCharFormat::setToolTip from the ExtraSelection to
install the diagnostic tooltip. Since this allows to set only text
tooltips and we would like to introduce a custom tooltip widget for
diagnostics, make use of CppHoverHandler, which is more flexible.

Change-Id: Ia1b2c3c50810596ce4a3a025002e6e4efd8789db
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2016-02-12 11:20:27 +00:00
Eike Ziller
72af6b7834 runAsync: Remove ResultType template parameter.
It is now deduced from either the type of the
QFutureInterface<ResultType> function argument, or the return type.

Change-Id: Iddab3cc329206c649a6e55a44b2de2d406701dee
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-10 10:58:55 +00:00
Marco Bubke
974070d2c8 Clang: Use MessageEnvelop instead of QVariant
QVariant has unwanted dependencies so we provided our own simpler solution.
We want to support move only types and calling the copy constructor as you
move the value in and outside. This copying is adding unwanted overhead
too.

Change-Id: I2e27a7924868efe81e8b8ff3415499c9fa22c2bc
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-02-08 14:11:44 +00:00