forked from qt-creator/qt-creator
CppTools: Distinguish between ProjectFile::{unclassified,unsupported}
There was no way to determine whether ProjectFile::classify() was run or not. Now, ProjectFile::classify() returns ProjectFile::Unsupported instead of ProjectFile::Unclassified. Change-Id: I660d0e42044bdefcac38058c6f4a3425983a6d93 Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
committed by
David Schulz
parent
6bf8f85b33
commit
e2e78c6a5d
@@ -373,7 +373,7 @@ void IpcCommunicator::initializeBackend()
|
||||
static QStringList projectPartOptions(const CppTools::ProjectPart::Ptr &projectPart)
|
||||
{
|
||||
const QStringList options = ClangCodeModel::Utils::createClangOptions(projectPart,
|
||||
CppTools::ProjectFile::Unclassified); // No language option
|
||||
CppTools::ProjectFile::Unsupported); // No language option
|
||||
|
||||
return options;
|
||||
}
|
||||
|
@@ -383,6 +383,7 @@ static AnalyzeUnits unitsToAnalyzeFromProjectParts(const QVector<ProjectPart::Pt
|
||||
|
||||
foreach (const ProjectFile &file, projectPart->files) {
|
||||
QTC_CHECK(file.kind != ProjectFile::Unclassified);
|
||||
QTC_CHECK(file.kind != ProjectFile::Unsupported);
|
||||
if (ProjectFile::isSource(file.kind)) {
|
||||
const CompilerOptionsBuilder::PchUsage pchUsage = CppTools::getPchUsage();
|
||||
const QStringList arguments
|
||||
|
@@ -187,6 +187,7 @@ static QStringList createLanguageOptionGcc(ProjectFile::Kind fileKind, bool objc
|
||||
|
||||
switch (fileKind) {
|
||||
case ProjectFile::Unclassified:
|
||||
case ProjectFile::Unsupported:
|
||||
break;
|
||||
case ProjectFile::CHeader:
|
||||
if (objcExt)
|
||||
|
@@ -53,7 +53,7 @@ ProjectFile::Kind ProjectFile::classify(const QString &filePath)
|
||||
Utils::MimeDatabase mdb;
|
||||
const Utils::MimeType mimeType = mdb.mimeTypeForFile(filePath);
|
||||
if (!mimeType.isValid())
|
||||
return Unclassified;
|
||||
return Unsupported;
|
||||
const QString mt = mimeType.name();
|
||||
if (mt == QLatin1String(CppTools::Constants::C_SOURCE_MIMETYPE))
|
||||
return CSource;
|
||||
@@ -71,7 +71,7 @@ ProjectFile::Kind ProjectFile::classify(const QString &filePath)
|
||||
return CXXSource;
|
||||
if (mt == QLatin1String(CppTools::Constants::MOC_MIMETYPE))
|
||||
return CXXSource;
|
||||
return Unclassified;
|
||||
return Unsupported;
|
||||
}
|
||||
|
||||
bool ProjectFile::isAmbiguousHeader(const QString &filePath)
|
||||
@@ -86,7 +86,7 @@ bool ProjectFile::isHeader(ProjectFile::Kind kind)
|
||||
case ProjectFile::CXXHeader:
|
||||
case ProjectFile::ObjCHeader:
|
||||
case ProjectFile::ObjCXXHeader:
|
||||
case ProjectFile::Unclassified: // no file extension, e.g. stl headers
|
||||
case ProjectFile::Unsupported: // no file extension, e.g. stl headers
|
||||
case ProjectFile::AmbiguousHeader:
|
||||
return true;
|
||||
default:
|
||||
@@ -124,6 +124,7 @@ const char *projectFileKindToText(ProjectFile::Kind kind)
|
||||
{
|
||||
switch (kind) {
|
||||
RETURN_TEXT_FOR_CASE(Unclassified);
|
||||
RETURN_TEXT_FOR_CASE(Unsupported);
|
||||
RETURN_TEXT_FOR_CASE(AmbiguousHeader);
|
||||
RETURN_TEXT_FOR_CASE(CHeader);
|
||||
RETURN_TEXT_FOR_CASE(CSource);
|
||||
|
@@ -36,6 +36,7 @@ class CPPTOOLS_EXPORT ProjectFile
|
||||
public:
|
||||
enum Kind {
|
||||
Unclassified,
|
||||
Unsupported,
|
||||
AmbiguousHeader,
|
||||
CHeader,
|
||||
CSource,
|
||||
|
@@ -404,7 +404,7 @@ QString correspondingHeaderOrSource(const QString &fileName, bool *wasHeader)
|
||||
if (debug)
|
||||
qDebug() << Q_FUNC_INFO << fileName << kind;
|
||||
|
||||
if (kind == ProjectFile::Unclassified)
|
||||
if (kind == ProjectFile::Unsupported)
|
||||
return QString();
|
||||
|
||||
const QString baseName = fi.completeBaseName();
|
||||
|
@@ -1151,7 +1151,7 @@ static void slotTooltipOverrideRequested
|
||||
&context.function, &context.scopeFromLine, &context.scopeToLine);
|
||||
context.expression = fixCppExpression(raw);
|
||||
context.isCppEditor = CppTools::ProjectFile::classify(document->filePath().toString())
|
||||
!= CppTools::ProjectFile::Unclassified;
|
||||
!= CppTools::ProjectFile::Unsupported;
|
||||
|
||||
if (context.expression.isEmpty()) {
|
||||
ToolTip::show(point, DebuggerToolTipManager::tr("No valid expression"),
|
||||
|
@@ -399,6 +399,7 @@ void ComponentViewController::createComponentModel(const ProjectExplorer::Folder
|
||||
isSource = true;
|
||||
break;
|
||||
case CppTools::ProjectFile::Unclassified:
|
||||
case CppTools::ProjectFile::Unsupported:
|
||||
isSource = false;
|
||||
break;
|
||||
}
|
||||
|
@@ -795,7 +795,7 @@ static CppTools::ProjectFile::Kind cppFileType(const qbs::ArtifactData &sourceFi
|
||||
return CppTools::ProjectFile::ObjCSource;
|
||||
if (sourceFile.fileTags().contains(QLatin1String("objcpp")))
|
||||
return CppTools::ProjectFile::ObjCXXSource;
|
||||
return CppTools::ProjectFile::Unclassified;
|
||||
return CppTools::ProjectFile::Unsupported;
|
||||
}
|
||||
|
||||
static QString groupLocationToProjectFile(const qbs::CodeLocation &location)
|
||||
|
Reference in New Issue
Block a user