Esempio n. 1
0
        private void OpenProject(string fileName, bool create, Action <Exception> result)
        {
            EsperProject p = null;

            FileStore.Directory r = null;
            _worker.Do(() =>
            {
                p = new EsperProject(fileName, create);
                r = p.FileStore.GetFullTree();
            },
                       (e) =>
            {
                if (e != null)
                {
                    MessageBox.Show("FileStore error occured:\n" + e.Message ?? e.ToString(),
                                    "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
                else
                {
                    BeforeInitialize?.Invoke(this, EventArgs.Empty);
                    _project = p;
                    _root    = r;
                    Init();
                }
                result?.Invoke(e);
            });
        }
Esempio n. 2
0
        private void _Init(FileStore.Directory root, TreeNodeCollection nodes)
        {
            foreach (var dir in root.Directories)
            {
                var node = new TreeNode(dir.Name);
                node.Tag = dir;
                nodes.Add(node);
                _Init(dir, node.Nodes);
            }

            foreach (var file in root.Files)
            {
                if (file.GetFullSystemPath() != _project.FullFileName)
                {
                    var node = new TreeNode(file.Name);
                    node.Tag = file;
                    nodes.Add(node);
                }
            }
        }