Commit Graph

18 Commits

Author SHA1 Message Date
hjk
e3e3477307 ClangStaticAnalyzer: Remove uses of global object pool
Change-Id: I6cdfade5ecbfb48d714c6055fab733b8061369b4
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-02-07 16:40:32 +00:00
hjk
f3afac128b ClangStaticAnalyzer: Avoid use of DummyRunConfigurations
This moves the explicit build step into a dependent runWorker,
making the whole setup more aligned with a normal tool run.

Change-Id: Icd01b2e82f7f95774434d2ede04d08a5311b64e7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-09-26 11:19:40 +00:00
hjk
c8054d9547 ProjectExplorer: Heed RunControlFactory priorities again
This fixes the regression introduced in 5a848aa188 and uses the
feature to resolve the conflict between ClangStaticAnalyzer and Boot2Qt.

Change-Id: I6cdec8261a457c399c11a4b2078a78088d4c56d1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-07-17 12:28:31 +00:00
hjk
40bd9aba9c ClangStaticAnalyzer: Adapt to new simpler RunControl creation
Change-Id: Ib088828a9695938afb83bcdd2d5fd4124dd602a8
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-06-20 13:49:50 +00:00
hjk
314f77fae4 ClangStaticAnalyzer: Move closer to new target/tool split
The ClangStaticAnalyzer is a tool.

Change-Id: I1462997a99e49486b47accb302d3f5b7b0b672b6
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-05-08 10:02:35 +00:00
Alessandro Portale
e809594fae Core: Make IOptionsPage::categoryIcon a Utils::Icon
This is necessary for themable + HighDPI icons in the options dialog.

Change-Id: I8e3ff87a24591af40bb76b39cd970443d7678fae
Reviewed-by: hjk <hjk@qt.io>
2016-09-20 12:52:49 +00:00
Eike Ziller
c56aa52b80 Merge remote-tracking branch 'origin/4.1'
Conflicts:
	qbs/modules/qtc/qtc.qbs
	qtcreator.pri
	src/plugins/qmakeprojectmanager/makestep.cpp
	src/shared/qbs

Change-Id: If1787ed23afa786ed2cef57f53c1db642559cbe0
2016-08-31 14:40:38 +02:00
Nikolai Kosjar
a8039d9ce2 ClangStaticAnalyzer: Simplify testing various kits
The already available ClangStaticAnalyzerUnitTests uses the automatically set
up "Desktop" kit to run the analyzer. This is fine for tests that are run in
the build environment of Qt Creator. However, testing different kits on the
same machine means to build Qt Creator itself with those kits, which is not
practical.

The new ClangStaticAnalyzerSessionTests will open the predefined session
"ClangStaticAnalyzerPreconfiguredSession" and for each project and each target
it will run the analyzer. If there is no such session, the test will be
skipped.

To manually preconfigure the desired session:

  1. ./qtcreator -settingspath /custom/path
  2. Set up the desired kits.
  3. Create a session with the name ClangStaticAnalyzerPreconfiguredSession and
     load the desired test projects.

To run the test:
  ./qtcreator -settingspath /custom/path -test ClangStaticAnalyzer,testPreconfiguredSession

Change-Id: I0f027353854088d3acf8acecc16c74e9f0516e7d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2016-08-25 14:30:31 +00:00
hjk
2459652234 ProjectExplorer: Rework mode main window
The existing solution with the special-style horizontal
kit selector comes from a time when there was typically
one, at most four targets. Today's setup can easily
reach half a dozen targets with several toolchain versions
each and can't be sensibly handled with the overflowing
horizontal bar.

This here replaces the horizontal kit selector bar as
well as the top level project "tab bar" with a normal
tree view. All targets are visible (but possibly disabled)
at once, and can be enabled/disabled using the context
menu on the tree items.

Change-Id: I1ce7401ca96109bf34bc8c0ae19d265e5845aa88
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2016-07-26 10:00:09 +00:00
Nikolai Kosjar
c001739115 Clang Static Analyzer: Remove "Settings" from project settings panel title
Change-Id: I4586df602352f49673906738a075abdcf084e0af
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2016-04-06 09:37:07 +00:00
hjk
92e301a054 Debugger: Merge debug mode and analyze mode
On the user-visible side, only the 'Analyze' mode button disappears,
and instead a combobox to switch between different tools in appears
in the Debug mode toolbar.

Internally, that's quite some re-organzition: The centralized
'Analyze mode is busy' flag is gone, allowing us to run e.g.
ClangStaticAnalyzer and MemCheck in parallel.

Analyzer tools and debugger now share the same mechanism to
generate/load/save dock widgets.

Analyzer tools now create and handle their own start/stop button
when appropriate. In general, Analyzer tools can create/handle more
than one run control at a time.

Further consolidation is possible, e.g. RunControl state handling
could be merged into the base ProjectExplorer::RunControl to
avoid the still existing duplication in ~15 instances.

Change-Id: I91e5940ebc4211f98056d507cf2f7b5f8efe7f07
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-03-07 15:06:10 +00:00
hjk
f3bd7412ef Debugger: Remove return value from AnalyzerManager::createDockWidget()
Change-Id: If6cd2a68f2f99a1977ded0f05a12790194143274
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-03-02 08:08:15 +00:00
hjk
931ee3382c Analyzer: Rework the dock widget layout generation
Decouple layout generation from widget generation and
separate analyzer action description from menu action creation.

Tool specific layouts are named "Perspective" now.

Change-Id: I774efe77a07640c4cc26e4e566662c8a673c8831
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-29 10:47:43 +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
Ulf Hermann
a1dd1e4c5b Add runConfiguration to remote tool starters
Most of them need a run configuration. It's better to pass the
right one than to use various hacky ways to work around it.

Change-Id: Ic21b0ef33bdd79b526b1e1a1ead5ca87d9f32c4d
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-01-22 17:26:17 +00:00
Orgad Shaneh
08370e8318 ClangStaticAnalyzer: Remove initializeEnterpriseFeatures
Should have been removed in e775ff3049.

Change-Id: I5e2d3755c892cf1c1d9a6729b3b6e372ffcf4c62
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-01-22 09:17:07 +00:00
hjk
789488af4d Analyzer: Remove AnalyzerStartParameters
Change-Id: I4188ffd046cc92be64bf9751e90fe8c66942b08c
Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
2016-01-20 17:10:27 +00:00
Eike Ziller
06e1cc0331 Move sources to new location for Qt Creator repository
When moving the files within the merge commit, git for some reason does not recognize the files as moved, so we move them before actually doing the merge.

Change-Id: I5a8ba6b027734c8ff38a7f2a5dc51a30a0fc17a8
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-01-20 14:00:43 +00:00