public File(Main root, FileInfo file) { Root = root; Info = file; Parent = Directory.Get(root, file.Directory); Lang = new Language.Plain(); }
public static void Main(string[] args) { string rootPath; if (args.Length == 0) { string env = Environment.GetEnvironmentVariable("DI_PROJECT"); if (string.IsNullOrEmpty(env)) { rootPath = Environment.CurrentDirectory; } else { rootPath = env; } } else { rootPath = args[0]; } Application.Init(); var model = new Model.Main(Karl.Fs.Directory.Get(rootPath)); var ctl = new Controller.Main(model); var view = new View.Main(ctl); Session.Main.Load(model.SessionFile, ctl, view); view.ShowAll(); ctl.Ready.Handler(); Application.Run(); }
private Directory(Main root, DirectoryInfo info) { Root = root; Info = info; Parent = info.FullName == root.Root.FullName ? null : Get(root, info.Parent); }
public static IEnumerable<Directory> GetAll(Main root) { return Directories[root].Values; }
public static Directory Get(Main root, DirectoryInfo info) { if (!Directories.ContainsKey(root)) { Directories[root] = new Dictionary<DirectoryInfo, Directory>(); } if (!Directories[root].ContainsKey(info)) { Directories[root][info] = new Directory(root, info); } return Directories[root][info]; }