aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cppeditor/cpptoolsjsextension.cpp
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2023-05-31 14:29:03 +0200
committerChristian Kandeler <christian.kandeler@qt.io>2023-06-08 08:23:01 +0000
commit8e75381fce29504cd3f278f90cfcda22b9e47b4d (patch)
tree2d5f97c186e1ec6635b792f810284fb6141860bd /src/plugins/cppeditor/cpptoolsjsextension.cpp
parent6cc325f845b1ed2df3d28271146919c158f003d3 (diff)
CppEditor: Give C++ file name settings a per-project variant
Fixes: QTCREATORBUG-22033 Change-Id: If37517bb091438e70c5af5102bf833ed46d0c951 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: David Schulz <david.schulz@qt.io>
Diffstat (limited to 'src/plugins/cppeditor/cpptoolsjsextension.cpp')
-rw-r--r--src/plugins/cppeditor/cpptoolsjsextension.cpp32
1 files changed, 30 insertions, 2 deletions
diff --git a/src/plugins/cppeditor/cpptoolsjsextension.cpp b/src/plugins/cppeditor/cpptoolsjsextension.cpp
index 73a846593c..0818af0acb 100644
--- a/src/plugins/cppeditor/cpptoolsjsextension.cpp
+++ b/src/plugins/cppeditor/cpptoolsjsextension.cpp
@@ -3,6 +3,7 @@
#include "cpptoolsjsextension.h"
+#include "cppeditorplugin.h"
#include "cppfilesettingspage.h"
#include "cpplocatordata.h"
#include "cppworkingcopy.h"
@@ -12,6 +13,7 @@
#include <projectexplorer/project.h>
#include <projectexplorer/projectmanager.h>
#include <projectexplorer/projectnodes.h>
+#include <projectexplorer/projecttree.h>
#include <cplusplus/AST.h>
#include <cplusplus/ASTPath.h>
@@ -27,6 +29,13 @@
namespace CppEditor::Internal {
+static CppFileSettings fileSettings()
+{
+ // Note that the user can set a different project in the wizard *after* the file names
+ // have been determined. There's nothing we can do about that here.
+ return CppEditorPlugin::fileSettings(ProjectExplorer::ProjectTree::currentProject());
+}
+
static QString fileName(const QString &path, const QString &extension)
{
return Utils::FilePath::fromStringWithExtension(path, extension).toString();
@@ -37,6 +46,16 @@ QString CppToolsJsExtension::headerGuard(const QString &in) const
return Utils::headerGuard(in);
}
+QString CppToolsJsExtension::licenseTemplate() const
+{
+ return fileSettings().licenseTemplate();
+}
+
+bool CppToolsJsExtension::usePragmaOnce() const
+{
+ return fileSettings().headerPragmaOnce;
+}
+
static QStringList parts(const QString &klass)
{
return klass.split(QStringLiteral("::"));
@@ -63,8 +82,7 @@ QString CppToolsJsExtension::className(const QString &klass) const
QString CppToolsJsExtension::classToFileName(const QString &klass, const QString &extension) const
{
const QString raw = fileName(className(klass), extension);
- CppFileSettings settings;
- settings.fromSettings(Core::ICore::settings());
+ const CppFileSettings &settings = fileSettings();
if (!settings.lowerCaseFiles)
return raw;
@@ -249,4 +267,14 @@ QString CppToolsJsExtension::includeStatement(
return {};
}
+QString CppToolsJsExtension::cxxHeaderSuffix() const
+{
+ return fileSettings().headerSuffix;
+}
+
+QString CppToolsJsExtension::cxxSourceSuffix() const
+{
+ return fileSettings().sourceSuffix;
+}
+
} // namespace CppEditor::Internal