File indexing completed on 2024-05-12 04:39:41

0001 /*
0002     SPDX-FileCopyrightText: 2014 Sergey Kalinichev <kalinichev.so.0@gmail.com>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #ifndef NOPROJECTINCLUDEPATHSMANAGER_H
0008 #define NOPROJECTINCLUDEPATHSMANAGER_H
0009 
0010 #include <QString>
0011 
0012 #include <util/path.h>
0013 
0014 using KDevelop::Path;
0015 
0016 class NoProjectIncludePathsManager
0017 {
0018 public:
0019     /// @return list of include directories for @p oath
0020     std::pair<Path::List, QHash<QString, QString>> includesAndDefines( const QString& path );
0021 
0022     /// Opens the configuration page for file with the @p path
0023     void openConfigurationDialog( const QString& path );
0024 private:
0025     bool writeIncludePaths( const QString& storageDirectory, const QStringList& includePaths );
0026 
0027 private:
0028     ///Finds the configuration file starting with the directory @p path
0029     QString findConfigurationFile( const QString& path );
0030 };
0031 
0032 #endif // NOPROJECTINCLUDEPATHSMANAGER_H