Warning, /sdk/cutehmi/extensions/extensions.qbs is written in an unsupported language. File is not indexed.
0001 import qbs.File 0002 0003 Project { 0004 references: extensionsProbe.extensionDirs 0005 0006 /* 0007 This probe performs a recursive search for extension directories. It first scans current directory for its subdirectories. 0008 Each directory, which contains `project.qbs` file or a `.qbs` file with the same base name as name of the directory, where it 0009 resides is considered to be an extension directory. If subdirectory does not contain any of these files, then it is 0010 recursively scanned for extension directories. Extension directories are stored in `extensionDirs` property. 0011 */ 0012 Probe { 0013 id: extensionsProbe 0014 0015 property pathList extensionDirs: [] 0016 0017 configure: { 0018 /* 0019 Recursive function that searches for extension directories. 0020 @param rootPath root path, where the search should start. 0021 @param dir directory relative to root path, which is going to be scanned for extension directories. Do not add 0022 trailing "/" (slash) upon external call. 0023 @param result array containing list of extension directories. 0024 */ 0025 function findExtensionDirs(rootPath, dir, result) { 0026 var dirs = File.directoryEntries(rootPath + "/" + dir, File.Dirs | File.NoDotAndDotDot) 0027 for (var i = 0; i < dirs.length; i++) { 0028 var qbsFileDir = rootPath + "/" + dir + dirs[i] + "/" 0029 if (File.exists(qbsFileDir + "project.qbs") || File.exists(qbsFileDir + dirs[i] + ".qbs")) 0030 result.push(dir + dirs[i]) 0031 else 0032 findExtensionDirs(rootPath, dir + dirs[i] + "/", result) // Internally trailing slash has to be appended however. 0033 } 0034 } 0035 0036 var result = [] 0037 findExtensionDirs(path, "", result) 0038 extensionDirs = result 0039 } 0040 } 0041 }