Commit Graph

5 Commits

Author SHA1 Message Date
Nikolai Kosjar
c82d372a41 CppTools: Ensure that the C++ project part is the first one
...for a given file in the ambiguous case (CppModelManager::projectPart).

There are several places where the first one will be preferred if there
are multiple project parts associated with a project file.

Change-Id: Ic01ea06277bc10f872238dcc181a55532b5783be
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-12-14 11:34:57 +00:00
Nikolai Kosjar
0265442c93 QMakeProjectManager: Use ProjectPartBuilder
...as the other project managers.

This removes extra code paths, duplication and improves classification
of source files (ambiguous headers).

Change-Id: Iae05cbbc61ab2e5dd841ae617bec994e0a1e52d5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-12-13 14:55:36 +00:00
Nikolai Kosjar
7381736cf3 CppTools: Clean up ProjectPart
Change-Id: Ia7969ceb52ffb25e7c63b24bc33b091001e9b50a
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-12-13 08:33:14 +00:00
Nikolai Kosjar
a10bfb8400 CppTools: Do not hardcode default language version
...instead, use the latest we support.

Change-Id: I7e7768bc4bc31de1fe0f441c03f3ab5d677d76e8
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-12-13 08:33:09 +00:00
Nikolai Kosjar
602ad72d42 CppTools: Refactor ProjectPartBuilder
...and add some basic tests.

Introduce the abstractions ProjectInterface and ToolChainInterface in
order to break the dependency to the ProjectExplorer. Also, some simple
logic can go there to simplify the (Base)ProjectPartBuilder.

Change-Id: I6c50a1804ce62098b87109931eb171f5c2542937
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-12-13 08:33:04 +00:00