CppTools: Consider .cu files

... when switching via F4 from a .h file and vice versa.

Fixes: QTCREATORBUG-24418
Change-Id: I121967dbec90125b3feed0a9d2aceb9826f925f3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
Christian Kandeler
2020-10-01 11:13:17 +02:00
parent ff99c2213b
commit 7125406305
3 changed files with 11 additions and 6 deletions

View File

@@ -65,6 +65,8 @@ ProjectFile::Kind ProjectFile::classifyByMimeType(const QString &mt)
return CXXSource;
if (mt == CppTools::Constants::MOC_MIMETYPE)
return CXXSource;
if (mt == CppTools::Constants::CUDA_SOURCE_MIMETYPE)
return CudaSource;
if (mt == CppTools::Constants::AMBIGUOUS_HEADER_MIMETYPE)
return AmbiguousHeader;
return Unsupported;
@@ -144,6 +146,7 @@ bool ProjectFile::isCxx(ProjectFile::Kind kind)
case ProjectFile::CXXSource:
case ProjectFile::ObjCXXHeader:
case ProjectFile::ObjCXXSource:
case ProjectFile::CudaSource:
return true;
default:
return false;

View File

@@ -36,6 +36,7 @@ const char OPEN_HEADER_SOURCE_IN_NEXT_SPLIT[] = "CppTools.OpenHeaderSourceInNext
const char TASK_INDEX[] = "CppTools.Task.Index";
const char TASK_SEARCH[] = "CppTools.Task.Search";
const char C_SOURCE_MIMETYPE[] = "text/x-csrc";
const char CUDA_SOURCE_MIMETYPE[] = "text/vnd.nvidia.cuda.csrc";
const char C_HEADER_MIMETYPE[] = "text/x-chdr";
const char CPP_SOURCE_MIMETYPE[] = "text/x-c++src";
const char OBJECTIVE_C_SOURCE_MIMETYPE[] = "text/x-objcsrc";

View File

@@ -277,18 +277,19 @@ static QStringList matchingCandidateSuffixes(ProjectFile::Kind kind)
case ProjectFile::CXXHeader:
case ProjectFile::ObjCHeader:
case ProjectFile::ObjCXXHeader:
return Utils::mimeTypeForName(QLatin1String(Constants::C_SOURCE_MIMETYPE)).suffixes()
+ Utils::mimeTypeForName(QLatin1String(Constants::CPP_SOURCE_MIMETYPE)).suffixes()
+ Utils::mimeTypeForName(QLatin1String(Constants::OBJECTIVE_C_SOURCE_MIMETYPE)).suffixes()
+ Utils::mimeTypeForName(QLatin1String(Constants::OBJECTIVE_CPP_SOURCE_MIMETYPE)).suffixes();
return mimeTypeForName(Constants::C_SOURCE_MIMETYPE).suffixes()
+ mimeTypeForName(Constants::CPP_SOURCE_MIMETYPE).suffixes()
+ mimeTypeForName(Constants::OBJECTIVE_C_SOURCE_MIMETYPE).suffixes()
+ mimeTypeForName(Constants::OBJECTIVE_CPP_SOURCE_MIMETYPE).suffixes()
+ mimeTypeForName(Constants::CUDA_SOURCE_MIMETYPE).suffixes();
case ProjectFile::CSource:
case ProjectFile::ObjCSource:
return Utils::mimeTypeForName(QLatin1String(Constants::C_HEADER_MIMETYPE)).suffixes();
return mimeTypeForName(Constants::C_HEADER_MIMETYPE).suffixes();
case ProjectFile::CXXSource:
case ProjectFile::ObjCXXSource:
case ProjectFile::CudaSource:
case ProjectFile::OpenCLSource:
return Utils::mimeTypeForName(QLatin1String(Constants::CPP_HEADER_MIMETYPE)).suffixes();
return mimeTypeForName(Constants::CPP_HEADER_MIMETYPE).suffixes();
default:
return QStringList();
}