Beispiel #1
0
        /// <summary>
        /// Registers a new folder with decl files.
        /// </summary>
        /// <param name="folder"></param>
        /// <param name="extension"></param>
        /// <param name="defaultType"></param>
        public void RegisterDeclFolder(string folder, string extension, DeclType defaultType)
        {
            // check whether this folder / extension combination already exists
            foreach (idDeclFolder tmp in _declFolders)
            {
                if ((StringComparer.InvariantCultureIgnoreCase.Compare(tmp.Folder, folder) == 0) &&
                    (StringComparer.InvariantCultureIgnoreCase.Compare(tmp.Extension, extension) == 0))
                {
                    idConsole.Warning("decl folder '{0}' already exists", folder);
                    return;
                }
            }

            idDeclFolder declFolder = new idDeclFolder();

            declFolder.Folder      = folder;
            declFolder.Extension   = extension;
            declFolder.DefaultType = defaultType;

            _declFolders.Add(declFolder);

            // scan for decl files
            idFileList fileList = idE.FileSystem.GetFiles(declFolder.Folder, declFolder.Extension, true);
            idDeclFile declFile = null;

            // load and parse decl files
            foreach (string file in fileList.Files)
            {
                string fileName = Path.Combine(declFolder.Folder, file);

                // check whether this file has already been loaded
                if (_loadedFiles.ContainsKey(fileName) == true)
                {
                    declFile = _loadedFiles[fileName];
                }
                else
                {
                    declFile = new idDeclFile(fileName, defaultType);
                    _loadedFiles.Add(fileName, declFile);
                }

                declFile.LoadAndParse();
            }
        }
Beispiel #2
0
		protected virtual void ClearData()
		{
			_sourceFile = null;
		}
Beispiel #3
0
 protected virtual void ClearData()
 {
     _sourceFile = null;
 }