AGS.Plugin.Lua.LuaScriptFolderInfo.OnWatchedChange C# (CSharp) Метод

OnWatchedChange() приватный Метод

private OnWatchedChange ( WatcherChangeTypes change, string name, string oldName ) : void
change WatcherChangeTypes
name string
oldName string
Результат void
        private void OnWatchedChange(WatcherChangeTypes change, string name, string oldName)
        {
            switch (change)
            {
                case WatcherChangeTypes.Created:
                    string path = Path.Combine(dir.FullName, name);
                    if (Directory.Exists(path))
                    {
                        LuaScriptFolderInfo newFolder
                            = new LuaScriptFolderInfo(component, this, new DirectoryInfo(path));
                        RefreshIcons();
                        if (name == creating)
                        {
                            component.editor.GUIController.ProjectTree.SelectNode(component, newFolder.key);
                        }
                    }
                    else
                    {
                        LuaScriptFileInfo newScript
                            = new LuaScriptFileInfo(component, this, new FileInfo(path));
                        RefreshIcons();
                        if (name == creating)
                        {
                            component.editor.GUIController.ProjectTree.SelectNode(component, newScript.key);
                            newScript.Open();
                        }
                    }
                    creating = null;
                    break;
                case WatcherChangeTypes.Deleted:
                {
                    LuaScriptFileInfo script;
                    LuaScriptFolderInfo folder;
                    if (Scripts.TryGetValue(name.ToLower(), out script))
                    {
                        script.BeenDeleted();
                    }
                    else if (SubFolders.TryGetValue(name.ToLower(), out folder))
                    {
                        folder.BeenDeleted();
                    }
                    break;
                }
                case WatcherChangeTypes.Changed:
                    break;
                case WatcherChangeTypes.Renamed:
                    if (SubFolders.ContainsKey(oldName.ToLower()))
                    {
                        SubFolders[oldName.ToLower()].BeenRenamed(name);
                    }
                    else if (Scripts.ContainsKey(oldName.ToLower()))
                    {
                        Scripts[oldName.ToLower()].BeenRenamed(name);
                    }
                    break;
            }
        }