Exemplo n.º 1
0
        public override void Initialize()
        {
            Console.WriteLine(Environment.CurrentDirectory);
            base.Initialize();
            tree = new  Gwen.Control.TreeControl(panel);

            tree.SetSize(panel.Width, panel.Height);
            tree.ShouldDrawBackground = false;

            var type       = typeof(Pipeline);
            var subclasses = type.Assembly.GetTypes().Where(t => t.IsSubclassOf(type));

            foreach (var subclass in subclasses)
            {
                subclass.GetCustomAttributes(false);
            }
            MeshPipeline.SetMeshContext <ushort, BasicVertexFormat> ();
            RecursiveBuildTree(root, tree);
            foreach (FileInfo file in FilterFiles(root, SupportedFileFormatsAttribute.importers.Keys))
            {
                if (!file.Name.StartsWith(".") && SupportedFileFormatsAttribute.importers.ContainsKey(file.Extension))
                {
                    tree.AddNode(() => SupportedFileFormatsAttribute.importers [file.Extension].Import(file.FullName));
                }
            }

            tree.Show();
            tree.Selected += OnSelected;
        }
Exemplo n.º 2
0
 void RecursiveBuildTree(DirectoryInfo dirRoot, Gwen.Control.TreeNode treeIter)
 {
     MeshPipeline.SetMeshContext <ushort, BasicVertexFormat> ();
     foreach (DirectoryInfo di in dirRoot.EnumerateDirectories())
     {
         if (!di.Name.StartsWith("."))
         {
             var iter = treeIter.AddNode(di.Name);
             foreach (FileInfo file in FilterFiles(di, SharpAsset.Pipeline.SupportedFileFormatsAttribute.importers.Keys))
             {
                 if (SupportedFileFormatsAttribute.importers.ContainsKey(file.Extension) && !file.Name.StartsWith("."))
                 {
                     iter.AddNode(() => SupportedFileFormatsAttribute.importers[file.Extension].Import(file.FullName));
                 }
             }
             RecursiveBuildTree(di, iter);
         }
     }
 }