From 2be3b541a61dccac620e1fbee08964e9155518a6 Mon Sep 17 00:00:00 2001 From: Andreas Stallinger Date: Wed, 30 Mar 2016 17:56:20 +0200 Subject: [PATCH] fix: vs detector fix for wrong published headersearch stuff --- .../headerSearch/VisualStudioDetector.cpp | 29 +++++++++++++++---- .../headerSearch/VisualStudioDetector.h | 3 +- 2 files changed, 26 insertions(+), 6 deletions(-) diff --git a/src/app/utility/headerSearch/VisualStudioDetector.cpp b/src/app/utility/headerSearch/VisualStudioDetector.cpp index 6275fa28..749f4d64 100644 --- a/src/app/utility/headerSearch/VisualStudioDetector.cpp +++ b/src/app/utility/headerSearch/VisualStudioDetector.cpp @@ -14,12 +14,28 @@ VisualStudioDetector::VisualStudioDetector(const std::string name) VisualStudioDetector::~VisualStudioDetector() { +} +void VisualStudioDetector::setName(const std::string& name) +{ + if (name.substr(0,2) == "VS") + { + m_versionNumber = std::stoi(name.substr(2,name.size()-3).c_str()); + if (m_versionNumber == 0) + { + // no version + } + DetectorBase::setName(name); + } + else + { + // invalid Visual Studio detector name + } } std::string VisualStudioDetector::getFullName() { - + return "Visual Studio " + std::to_string(m_versionNumber + 1); } std::vector VisualStudioDetector::getStandardHeaderPaths() @@ -33,7 +49,7 @@ std::vector VisualStudioDetector::getStandardHeaderPaths() VSHeaderPath = VSHeaderPath.concat("../VC/include"); if(VSHeaderPath.exists()) { - LOG_INFO_STREAM(<< "Visual Studio 20" << m_name.substr(2,m_name.length()-3) << " includes detected"); + LOG_INFO_STREAM(<< getFullName() << " includes detected"); path.push_back(VSHeaderPath.str()); } } @@ -42,19 +58,22 @@ std::vector VisualStudioDetector::getStandardHeaderPaths() std::string getInstallDir(const std::string RegistryKey) { - return ""; } +std::string getWindowsSDKDir() +{ + return ""; +} + bool searchForExpress() { - + QSettings expressKey("HKLM\\SOFTWARE\\Microsoft\\Visual Studio\\", QSettings::NativeFormat); return false; } bool searchForStandard() { - return false; } diff --git a/src/app/utility/headerSearch/VisualStudioDetector.h b/src/app/utility/headerSearch/VisualStudioDetector.h index 178bac30..29995b28 100644 --- a/src/app/utility/headerSearch/VisualStudioDetector.h +++ b/src/app/utility/headerSearch/VisualStudioDetector.h @@ -14,7 +14,8 @@ public: virtual std::vector getStandardHeaderPaths(); private: std::string getFullName(); - + void setName(const std::string& name); + int m_versionNumber; }; #endif // VISUAL_STUDIO_DETECTOR_H