コード例 #1
0
ファイル: File.cs プロジェクト: cpdean/di
 public File(Main root, FileInfo file)
 {
     Root = root;
     Info = file;
     Parent = Directory.Get(root, file.Directory);
     Lang = new Language.Plain();
 }
コード例 #2
0
ファイル: Program.cs プロジェクト: ktvoelker/di
 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();
 }
コード例 #3
0
ファイル: Directory.cs プロジェクト: cpdean/di
 private Directory(Main root, DirectoryInfo info)
 {
     Root = root;
     Info = info;
     Parent = info.FullName == root.Root.FullName ? null : Get(root, info.Parent);
 }
コード例 #4
0
ファイル: Directory.cs プロジェクト: cpdean/di
 public static IEnumerable<Directory> GetAll(Main root)
 {
     return Directories[root].Values;
 }
コード例 #5
0
ファイル: Directory.cs プロジェクト: cpdean/di
 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];
 }