CppEditor: Rework showing/switching parse configurations

* Move the combox box for switching the parse configurations out of the
  "Additional Preprocessor Directives" dialog ('#'-button) to make it
  better visible/accessible. Also, decouple the extra preprocessor
  directives from the concrete parse context since this is not anymore
  in same dialog.
* The combo box appears only if multiple parse configurations are
  available for a file.
* The first time multiple parse configurations are detected, an info bar
  is shown that points the user to the combox box. A "Do Not Show Again"
  button is provided.
* Upon selecting an entry, the preferred parse configuration is saved as
  part of the session. The setting can be cleared with the context menu
  entry on the combo box.

Follow-up changes need to ensure that the display name and/or tooltip is
unambiguous, e.g. for qbs and cmake projects.

Change-Id: I9e9773704187291524ad7b605bfdddd83ef5b19d
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Nikolai Kosjar
2017-01-18 15:05:46 +01:00
parent 9ac96339ff
commit 38ba61ec4f
18 changed files with 538 additions and 208 deletions

View File

@@ -70,6 +70,8 @@ public:
virtual void editorDocumentTimerRestarted();
virtual void setParserConfig(const BaseEditorDocumentParser::Configuration config);
public:
using HeaderErrorDiagnosticWidgetCreator = std::function<QWidget*()>;