Пример #1
0
 public override object GetViewModel(object parent, SystemEntryViewModel entry, object previous)
 {
     return this.Providers.Select(p => p.GetViewModel(parent, entry, previous)).Where(vm => vm != null).FirstOrDefault();
 }
Пример #2
0
 public void StartUp(Application.CommandLineOption option)
 {
     this._RootProvider = new RootProvider(this);
     this._RootEntry = new SystemEntryViewModel(null, this._RootProvider, new RootEntry(this));
     this._JobManager = new JobManager();
 }
Пример #3
0
        public bool TryParseEntryPath(string path, out SystemEntryViewModel viewModel)
        {
            path.ThrowIfNull("path");
            ISystemEntry entry;
            ISystemProvider provider;

            viewModel = null;
            var root = this.Entry.Entry;
            if(this._RootProvider.TryParsePath(root, path, out entry, out provider)) {
                var stack = new Stack<ISystemEntry>();
                while(root != entry) {
                    stack.Push(entry);
                    entry = entry.Parent;
                }

                viewModel = this.Entry;
                while(stack.Count > 0) {
                    viewModel = new SystemEntryViewModel(viewModel, provider, stack.Pop());
                }
                return true;
            } else {
                return false;
            }
        }
Пример #4
0
 public override object GetViewModel(object parent, SystemEntryViewModel entry, object previous)
 {
     return null;
 }